Class ObjectVisitorWithConstraintContext#

Inheritance Relationships#

Base Type#

Derived Type#

Class Documentation#

class ObjectVisitorWithConstraintContext : public tvm::tirx::StructuralVisitorWithConstraintContextObj#

Native object dispatch over one constraint-aware structural visitor.

Override Visit for general dispatch. Derived visitors initialize a native table with InitVTable and SetDispatch; unregistered values use structural fallback. Allocate with ffi::make_object. The inherited constraints handle is the active context.

Subclassed by tvm::tirx::StmtExprVisitorWithConstraintContext

Public Functions

inline ObjectVisitorWithConstraintContext()#
ObjectVisitorWithConstraintContext(const ObjectVisitorWithConstraintContext&) = delete#
ObjectVisitorWithConstraintContext &operator=(const ObjectVisitorWithConstraintContext&) = delete#
virtual ffi::Optional<ffi::VisitInterrupt> Visit(ffi::AnyView value)#

Dispatch a borrowed value, preserving structural error context.

inline ffi::Expected<ffi::Optional<ffi::VisitInterrupt>> VisitExpected(ffi::AnyView value) noexcept#

Protected Types

using VTable = ObjectFunctor<ffi::Optional<ffi::VisitInterrupt>(const ffi::Object*, ObjectVisitorWithConstraintContext*)>#

Protected Functions

inline explicit ObjectVisitorWithConstraintContext(const VTable *table)#

Protected Static Functions

static inline void InitVTable(VTable *table)#
template<typename Self, typename Node>
static inline void SetDispatch(VTable *table)#