|
MimIR 0.1
MimIR is my Intermediate Representation
|
If you have x1 x2 x3 x4: T it consists of 3 GrpPtrns and 1 IdPtrn while each GrpPtrn references the last IdPtrn.
More...
#include <mim/ast/ast.h>
Public Member Functions | |
| GrpPtrn (Dbg dbg, const IdPtrn *id) | |
| Dbg | dbg () const |
| const IdPtrn * | id () const |
| void | bind (Scopes &, bool rebind, bool quiet) const override |
| const Def * | emit_value (Emitter &, const Def *) const override |
| const Def * | emit_type (Emitter &) const override |
| std::ostream & | stream (Tab &, std::ostream &) const override |
Public Member Functions inherited from mim::ast::Ptrn | |
| Ptrn (Loc loc) | |
| virtual bool | is_implicit () const |
Public Member Functions inherited from mim::ast::Decl | |
| const Def * | def () const |
Public Member Functions inherited from mim::ast::Node | |
| Loc | loc () const |
| void | dump () const |
Additional Inherited Members | |
Static Public Member Functions inherited from mim::ast::Ptrn | |
| static Ptr< Expr > | to_expr (AST &, Ptr< Ptrn > &&) |
| static Ptr< Ptrn > | to_ptrn (Ptr< Expr > &&) |
Protected Member Functions inherited from mim::ast::Decl | |
| Decl (Loc loc) | |
Protected Member Functions inherited from mim::ast::Node | |
| Node (Loc loc) | |
| virtual | ~Node () |
Protected Attributes inherited from mim::ast::Decl | |
| const Def * | def_ = nullptr |
If you have x1 x2 x3 x4: T it consists of 3 GrpPtrns and 1 IdPtrn while each GrpPtrn references the last IdPtrn.
Definition at line 249 of file ast.h.
References dbg(), id(), mim::ast::Node::loc(), and mim::ast::Ptrn::Ptrn().
|
overridevirtual |
|
inline |
Implements mim::ast::Ptrn.
Definition at line 93 of file emit.cpp.
References mim::ast::IdPtrn::emit_type(), and id().
Implements mim::ast::Ptrn.
Definition at line 66 of file emit.cpp.
References dbg(), mim::ast::Decl::def(), and mim::ast::Decl::def_.
|
inline |
Definition at line 255 of file ast.h.
Referenced by emit_type(), and GrpPtrn().
|
overridevirtual |