MLIR
21.0.0git
|
Add support for llvm style casts. More...
#include "mlir/IR/Attributes.h"
Static Public Member Functions | |
static bool | isPossible (mlir::Attribute ty) |
Arguments are taken as mlir::Attribute here and not as From , because when casting from an intermediate type of the hierarchy to one of its children, the val.getTypeID() inside T::classof will use the static getTypeID of the parent instead of the non-static Type::getTypeID that returns the dynamic ID. More... | |
static To | doCast (mlir::Attribute attr) |
Add support for llvm style casts.
We provide a cast between To and From if From is mlir::Attribute or derives from it.
Definition at line 412 of file Attributes.h.
|
inlinestatic |
Definition at line 434 of file Attributes.h.
References mlir::Attribute::getImpl().
|
inlinestatic |
Arguments are taken as mlir::Attribute here and not as From
, because when casting from an intermediate type of the hierarchy to one of its children, the val.getTypeID() inside T::classof will use the static getTypeID of the parent instead of the non-static Type::getTypeID that returns the dynamic ID.
This means that T::classof would end up comparing the static TypeID of the children to the static TypeID of its parent, making it impossible to downcast from the parent to the child.
Return a constant true instead of a dynamic true when casting to self or up the hierarchy.
Definition at line 425 of file Attributes.h.