MLIR 22.0.0git
mlir::detail::FunctionTypeStorage Struct Reference

Function Type Storage and Uniquing. More...

#include "IR/TypeDetail.h"

Inheritance diagram for mlir::detail::FunctionTypeStorage:

Public Types

using KeyTy = std::tuple<TypeRange, TypeRange>
 The hash key used for uniquing.

Public Member Functions

 FunctionTypeStorage (unsigned numInputs, unsigned numResults, Type const *inputsAndResults)
bool operator== (const KeyTy &key) const
ArrayRef< TypegetInputs () const
ArrayRef< TypegetResults () const
KeyTy getAsKey () const
Public Member Functions inherited from mlir::TypeStorage
const AbstractTypegetAbstractType ()
 Return the abstract type descriptor for this type.

Static Public Member Functions

static FunctionTypeStorageconstruct (TypeStorageAllocator &allocator, const KeyTy &key)
 Construction.

Public Attributes

unsigned numInputs
unsigned numResults
Type const * inputsAndResults

Additional Inherited Members

Protected Member Functions inherited from mlir::TypeStorage
 TypeStorage ()
 This constructor is used by derived classes as part of the TypeUniquer.
Protected Member Functions inherited from mlir::StorageUniquer::BaseStorage
 BaseStorage ()=default

Detailed Description

Function Type Storage and Uniquing.

Definition at line 57 of file TypeDetail.h.

Member Typedef Documentation

◆ KeyTy

The hash key used for uniquing.

Definition at line 64 of file TypeDetail.h.

Constructor & Destructor Documentation

◆ FunctionTypeStorage()

mlir::detail::FunctionTypeStorage::FunctionTypeStorage ( unsigned numInputs,
unsigned numResults,
Type const * inputsAndResults )
inline

Definition at line 58 of file TypeDetail.h.

References inputsAndResults, numInputs, and numResults.

Referenced by construct().

Member Function Documentation

◆ construct()

FunctionTypeStorage * mlir::detail::FunctionTypeStorage::construct ( TypeStorageAllocator & allocator,
const KeyTy & key )
inlinestatic

◆ getAsKey()

KeyTy mlir::detail::FunctionTypeStorage::getAsKey ( ) const
inline

Definition at line 95 of file TypeDetail.h.

References getInputs(), and getResults().

◆ getInputs()

ArrayRef< Type > mlir::detail::FunctionTypeStorage::getInputs ( ) const
inline

Definition at line 88 of file TypeDetail.h.

References inputsAndResults, and numInputs.

Referenced by getAsKey(), and operator==().

◆ getResults()

ArrayRef< Type > mlir::detail::FunctionTypeStorage::getResults ( ) const
inline

Definition at line 91 of file TypeDetail.h.

References inputsAndResults, numInputs, and numResults.

Referenced by getAsKey(), and operator==().

◆ operator==()

bool mlir::detail::FunctionTypeStorage::operator== ( const KeyTy & key) const
inline

Definition at line 65 of file TypeDetail.h.

References getInputs(), and getResults().

Member Data Documentation

◆ inputsAndResults

Type const* mlir::detail::FunctionTypeStorage::inputsAndResults

Definition at line 99 of file TypeDetail.h.

Referenced by FunctionTypeStorage(), getInputs(), and getResults().

◆ numInputs

unsigned mlir::detail::FunctionTypeStorage::numInputs

Definition at line 97 of file TypeDetail.h.

Referenced by FunctionTypeStorage(), getInputs(), and getResults().

◆ numResults

unsigned mlir::detail::FunctionTypeStorage::numResults

Definition at line 98 of file TypeDetail.h.

Referenced by FunctionTypeStorage(), and getResults().


The documentation for this struct was generated from the following file: