Thorin 1.9.0
The Higher ORder INtermediate representation
Loading...
Searching...
No Matches
thorin::ast::ArrOrPackExpr< arr > Class Template Reference

«dbg: shape; body» or ‹dbg: shape; body› More...

#include <thorin/ast/ast.h>

Inheritance diagram for thorin::ast::ArrOrPackExpr< arr >:
[legend]

Public Member Functions

 ArrOrPackExpr (Loc loc, Ptr< IdPtrn > &&shape, Ptr< Expr > &&body)
 
const IdPtrnshape () const
 
const Exprbody () 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 ()
 

Detailed Description

template<bool arr>
class thorin::ast::ArrOrPackExpr< arr >

«dbg: shape; body» or ‹dbg: shape; body›

Definition at line 622 of file ast.h.

Constructor & Destructor Documentation

◆ ArrOrPackExpr()

template<bool arr>
thorin::ast::ArrOrPackExpr< arr >::ArrOrPackExpr ( Loc  loc,
Ptr< IdPtrn > &&  shape,
Ptr< Expr > &&  body 
)
inline

Definition at line 624 of file ast.h.

Member Function Documentation

◆ bind()

template<bool arr>
template void thorin::ast::ArrOrPackExpr< arr >::bind ( Scopes ) const
overridevirtual

Implements thorin::ast::Expr.

Definition at line 189 of file bind.cpp.

◆ body()

template<bool arr>
const Expr * thorin::ast::ArrOrPackExpr< arr >::body ( ) const
inline

Definition at line 630 of file ast.h.

◆ emit_()

template<bool arr>
template Ref thorin::ast::ArrOrPackExpr< arr >::emit_ ( Emitter ) const
overrideprivatevirtual

Implements thorin::ast::Expr.

Definition at line 268 of file emit.cpp.

References thorin::ast::Expr::emit().

◆ shape()

template<bool arr>
const IdPtrn * thorin::ast::ArrOrPackExpr< arr >::shape ( ) const
inline

Definition at line 629 of file ast.h.

◆ stream()

template<bool arr>
template std::ostream & thorin::ast::ArrOrPackExpr< arr >::stream ( Tab ,
std::ostream &   
) const
overridevirtual

Implements thorin::ast::Node.

Definition at line 139 of file stream.cpp.

References thorin::print().


The documentation for this class was generated from the following files: