llvm/mlir/lib/TableGen/Type.cpp

//===- Type.cpp - Type class ----------------------------------------------===//
//
// 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
//
//===----------------------------------------------------------------------===//
//
// Type wrapper to simplify using TableGen Record defining a MLIR Type.
//
//===----------------------------------------------------------------------===//

#include "mlir/TableGen/Type.h"
#include "mlir/TableGen/Dialect.h"
#include "llvm/ADT/Twine.h"
#include "llvm/ADT/TypeSwitch.h"
#include "llvm/TableGen/Record.h"

usingnamespacemlir;
usingnamespacemlir::tblgen;

TypeConstraint::TypeConstraint(const llvm::DefInit *init)
    :{}

bool TypeConstraint::isOptional() const {}

bool TypeConstraint::isVariadic() const {}

bool TypeConstraint::isVariadicOfVariadic() const {}

StringRef TypeConstraint::getVariadicOfVariadicSegmentSizeAttr() const {}

// Returns the builder call for this constraint if this is a buildable type,
// returns std::nullopt otherwise.
std::optional<StringRef> TypeConstraint::getBuilderCall() const {}

// Return the C++ type for this type (which may just be ::mlir::Type).
StringRef TypeConstraint::getCppType() const {}

Type::Type(const llvm::Record *record) :{}

Dialect Type::getDialect() const {}