Files
llvm/mlir/lib/TableGen/Argument.cpp
River Riddle aba1acc89c [mlir][ODS] Add support for optional operands and results with a new Optional directive.
Summary: This revision adds support for specifying operands or results as "optional". This is a special case of variadic where the number of elements is either 0 or 1. Operands and results of this kind will have accessors generated using Value instead of the range types, making it more natural to interface with.

Differential Revision: https://reviews.llvm.org/D77863
2020-04-10 14:12:06 -07:00

25 lines
753 B
C++

//===- Argument.cpp - Argument definitions --------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#include "mlir/TableGen/Argument.h"
#include "llvm/TableGen/Record.h"
using namespace mlir;
bool tblgen::NamedTypeConstraint::hasPredicate() const {
return !constraint.getPredicate().isNull();
}
bool tblgen::NamedTypeConstraint::isOptional() const {
return constraint.isOptional();
}
bool tblgen::NamedTypeConstraint::isVariadic() const {
return constraint.isVariadic();
}