MimIR 0.1
MimIR is my Intermediate Representation
|
#include <mim/ast/ast.h>
Public Member Functions | |
Loc | loc () const |
virtual std::ostream & | stream (Tab &, std::ostream &) const =0 |
void | dump () const |
Protected Member Functions | |
Node (Loc loc) | |
virtual | ~Node () |
|
inlineprotected |
Definition at line 116 of file ast.h.
References loc().
Referenced by mim::ast::Decl::Decl(), mim::ast::PiExpr::Dom::Dom(), mim::ast::Expr::Expr(), mim::ast::Import::Import(), and mim::ast::Module::Module().
void mim::ast::Node::dump | ( | ) | const |
Definition at line 32 of file stream.cpp.
References stream().
|
inline |
Definition at line 121 of file ast.h.
Referenced by mim::ast::PiExpr::Dom::add_ret(), mim::ast::AxiomDecl::Alias::Alias(), mim::ast::AliasPtrn::AliasPtrn(), mim::ast::AppExpr::AppExpr(), mim::ast::ArrOrPackExpr< true >::ArrOrPackExpr(), mim::ast::ArrowExpr::ArrowExpr(), mim::ast::AxiomDecl::AxiomDecl(), mim::ast::AxiomDecl::Alias::bind(), mim::ast::AxiomDecl::bind(), mim::ast::LitExpr::bind(), mim::ast::PiExpr::bind(), mim::ast::LamDecl::bind_decl(), mim::ast::RecDecl::bind_decl(), mim::ast::CDecl::CDecl(), mim::ast::Decl::Decl(), mim::ast::DeclExpr::DeclExpr(), mim::ast::LamDecl::Dom::Dom(), mim::ast::PiExpr::Dom::Dom(), mim::ast::AxiomDecl::emit(), mim::ast::Expr::emit(), mim::ast::Module::emit(), mim::ast::RetExpr::emit_(), mim::ast::TuplePtrn::emit_body(), mim::ast::ArrowExpr::emit_decl(), mim::ast::LamDecl::emit_decl(), mim::ast::PiExpr::emit_decl(), mim::ast::TuplePtrn::emit_decl(), mim::ast::IdPtrn::emit_type(), mim::ast::PiExpr::Dom::emit_type(), mim::ast::TuplePtrn::emit_value(), mim::ast::ErrorExpr::ErrorExpr(), mim::ast::ErrorPtrn::ErrorPtrn(), mim::ast::Expr::Expr(), mim::ast::ExtractExpr::ExtractExpr(), mim::ast::ExtractExpr::ExtractExpr(), mim::ast::GrpPtrn::GrpPtrn(), mim::ast::HoleExpr::HoleExpr(), mim::ast::IdExpr::IdExpr(), mim::ast::IdPtrn::IdPtrn(), mim::ast::Import::Import(), mim::ast::InsertExpr::InsertExpr(), mim::ast::LamDecl::LamDecl(), mim::ast::LamExpr::LamExpr(), mim::ast::LetDecl::LetDecl(), mim::ast::LitExpr::LitExpr(), mim::ast::IdPtrn::make_id(), mim::ast::IdPtrn::make_type(), mim::ast::Module::Module(), Node(), mim::ast::PiExpr::PiExpr(), mim::ast::PrimaryExpr::PrimaryExpr(), mim::ast::PrimaryExpr::PrimaryExpr(), mim::ast::Ptrn::Ptrn(), mim::ast::RecDecl::RecDecl(), mim::ast::RetExpr::RetExpr(), mim::ast::SigmaExpr::SigmaExpr(), mim::ast::TupleExpr::TupleExpr(), mim::ast::TuplePtrn::TuplePtrn(), mim::ast::TypeExpr::TypeExpr(), mim::ast::UniqExpr::UniqExpr(), and mim::ast::ValDecl::ValDecl().
|
pure virtual |
Implemented in mim::ast::AliasPtrn, mim::ast::AppExpr, mim::ast::ArrOrPackExpr< arr >, mim::ast::ArrOrPackExpr< false >, mim::ast::ArrOrPackExpr< false >, mim::ast::ArrOrPackExpr< true >, mim::ast::ArrOrPackExpr< true >, mim::ast::ArrowExpr, mim::ast::AxiomDecl::Alias, mim::ast::AxiomDecl, mim::ast::CDecl, mim::ast::DeclExpr, mim::ast::DummyDecl, mim::ast::ErrorExpr, mim::ast::ErrorPtrn, mim::ast::ExtractExpr, mim::ast::GrpPtrn, mim::ast::HoleExpr, mim::ast::IdExpr, mim::ast::IdPtrn, mim::ast::Import, mim::ast::InsertExpr, mim::ast::LamDecl::Dom, mim::ast::LamDecl, mim::ast::LamExpr, mim::ast::LetDecl, mim::ast::LitExpr, mim::ast::Module, mim::ast::PiExpr::Dom, mim::ast::PiExpr, mim::ast::PrimaryExpr, mim::ast::RecDecl, mim::ast::RetExpr, mim::ast::SigmaExpr, mim::ast::TupleExpr, mim::ast::TuplePtrn, mim::ast::TypeExpr, and mim::ast::UniqExpr.
Referenced by dump().