Thorin 1.9.0
The Higher ORder INtermediate representation
|
decls e
or e .where decls
if where
is true
.
More...
#include <thorin/ast/ast.h>
Public Member Functions | |
DeclExpr (Loc loc, Ptrs< ValDecl > &&decls, Ptr< Expr > &&expr, bool is_where) | |
const auto & | decls () const |
bool | is_where () const |
const Expr * | expr () const |
void | bind (Scopes &) const override |
std::ostream & | stream (Tab &, std::ostream &) const override |
Public Member Functions inherited from thorin::ast::Expr | |
Ref | emit (Emitter &) const |
virtual Ref | emit_decl (Emitter &, Ref) const |
virtual void | emit_body (Emitter &, Ref) const |
Public Member Functions inherited from thorin::ast::Node | |
Loc | loc () const |
void | dump () const |
Private Member Functions | |
Ref | emit_ (Emitter &) const override |
Additional Inherited Members | |
Protected Member Functions inherited from thorin::ast::Expr | |
Expr (Loc loc) | |
Protected Member Functions inherited from thorin::ast::Node | |
Node (Loc loc) | |
virtual | ~Node () |
|
overridevirtual |
Implements thorin::ast::Expr.
Definition at line 128 of file bind.cpp.
References thorin::ast::Expr::bind(), decls(), expr(), and is_where().
|
inline |
Implements thorin::ast::Expr.
Definition at line 171 of file emit.cpp.
References decls(), thorin::ast::Expr::emit(), expr(), and is_where().
|
inline |
|
inline |
|
overridevirtual |
Implements thorin::ast::Node.
Definition at line 92 of file stream.cpp.
References decls(), expr(), is_where(), thorin::print(), and thorin::Tab::println().