atlas  0.6
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
atlas::interpreter::closure_value Struct Reference

#include <axis.h>

Inheritance diagram for atlas::interpreter::closure_value:
Inheritance graph
[legend]
Collaboration diagram for atlas::interpreter::closure_value:
Collaboration graph
[legend]

Public Member Functions

 closure_value (const shared_context &c, const shared_lambda &l)
 
virtual ~closure_value () nothing_new_here
 
virtual void print (std::ostream &out) const
 
virtual void apply (expression_base::level l) const
 
virtual expression_base::level argument_policy () const
 
virtual void report_origin (std::ostream &o) const
 
virtual expression_ptr build_call (const shared_function &owner, const std::string &name, expression_ptr &&arg, const source_location &loc) const
 
virtual closure_valueclone () const
 
- Public Member Functions inherited from atlas::interpreter::function_base
 function_base ()
 
virtual ~function_base () nothing_new_here
 
- Public Member Functions inherited from atlas::interpreter::value_base
 value_base ()
 
virtual ~value_base ()=0
 
value_baseoperator= (const value_base &x)=delete
 

Static Public Member Functions

static const char * name ()
 
- Static Public Member Functions inherited from atlas::interpreter::value_base
static const char * name ()
 

Public Attributes

shared_context context
 
shared_lambda p
 
const expression_basebody
 

Additional Inherited Members

- Protected Member Functions inherited from atlas::interpreter::value_base
 value_base (const value_base &x)=default
 

Constructor & Destructor Documentation

atlas::interpreter::closure_value::closure_value ( const shared_context c,
const shared_lambda l 
)
inline
virtual atlas::interpreter::closure_value::~closure_value ( )

Member Function Documentation

void atlas::interpreter::closure_value::apply ( expression_base::level  l) const
virtual
virtual expression_base::level atlas::interpreter::closure_value::argument_policy ( ) const
inlinevirtual
expression_ptr atlas::interpreter::closure_value::build_call ( const shared_function owner,
const std::string name,
expression_ptr &&  arg,
const source_location loc 
) const
virtual
virtual closure_value* atlas::interpreter::closure_value::clone ( ) const
inlinevirtual

Reimplemented from atlas::interpreter::value_base.

static const char* atlas::interpreter::closure_value::name ( )
inlinestatic
void atlas::interpreter::closure_value::print ( std::ostream &  out) const
virtual
virtual void atlas::interpreter::closure_value::report_origin ( std::ostream &  o) const
inlinevirtual

Member Data Documentation

const expression_base& atlas::interpreter::closure_value::body
shared_context atlas::interpreter::closure_value::context
shared_lambda atlas::interpreter::closure_value::p

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