atlas  0.6
Public Types | Public Member Functions | List of all members
atlas::interpreter::expression_base Struct Referenceabstract

#include <axis-types.h>

Inheritance diagram for atlas::interpreter::expression_base:
Inheritance graph
[legend]

Public Types

enum  level { no_value, single_value, multi_value }
 

Public Member Functions

 expression_base ()
 
 expression_base (const expression_base &)=delete
 
 expression_base (expression_base &&)=delete
 
expression_baseoperator= (const expression_base &)=delete
 
expression_baseoperator= (expression_base &&)=delete
 
virtual ~expression_base ()
 
virtual void evaluate (level l) const =0
 
virtual void print (std::ostream &out) const =0
 
void void_eval () const
 
void eval () const
 
void multi_eval () const
 

Member Enumeration Documentation

Enumerator
no_value 
single_value 
multi_value 

Constructor & Destructor Documentation

atlas::interpreter::expression_base::expression_base ( )
inline
atlas::interpreter::expression_base::expression_base ( const expression_base )
delete
atlas::interpreter::expression_base::expression_base ( expression_base &&  )
delete
virtual atlas::interpreter::expression_base::~expression_base ( )
inline

Member Function Documentation

void atlas::interpreter::expression_base::eval ( ) const
inline
virtual void atlas::interpreter::expression_base::evaluate ( level  l) const
pure virtual

Implemented in atlas::interpreter::do_expression< negated >, atlas::interpreter::do_expression< negated >, atlas::interpreter::local_component_assignment< reversed >, atlas::interpreter::global_component_assignment< reversed >, atlas::interpreter::multiple_assignment, atlas::interpreter::local_assignment, atlas::interpreter::global_assignment, atlas::interpreter::counted_for_expression< flags >, atlas::interpreter::for_expression< flags, kind >, atlas::interpreter::dont_expression, atlas::interpreter::forever_expression, atlas::interpreter::do_expression< negated >, atlas::interpreter::while_expression< flags >, atlas::interpreter::int_case_expression, atlas::interpreter::conditional_expression, atlas::interpreter::projector_call, atlas::interpreter::matrix_slice< flags >, atlas::interpreter::string_slice< flags >, atlas::interpreter::ratvec_slice< flags >, atlas::interpreter::vector_slice< flags >, atlas::interpreter::row_slice< flags >, atlas::interpreter::module_coefficient, atlas::interpreter::matrix_get_column< reversed >, atlas::interpreter::matrix_subscription< reversed >, atlas::interpreter::string_subscription< reversed >, atlas::interpreter::ratvec_subscription< reversed >, atlas::interpreter::vector_subscription< reversed >, atlas::interpreter::row_subscription< reversed >, atlas::interpreter::next_expression, atlas::interpreter::seq_expression, atlas::interpreter::closure_call, atlas::interpreter::lambda_expression, atlas::interpreter::let_expression, atlas::interpreter::overloaded_builtin_call< variadic >, atlas::interpreter::voiding, atlas::interpreter::conversion, atlas::interpreter::call_expression, atlas::interpreter::local_identifier, atlas::interpreter::global_identifier, atlas::interpreter::list_expression, atlas::interpreter::tuple_expression, atlas::interpreter::returner, atlas::interpreter::breaker, atlas::interpreter::shell, and atlas::interpreter::denotation.

void atlas::interpreter::expression_base::multi_eval ( ) const
inline
virtual void atlas::interpreter::expression_base::print ( std::ostream &  out) const
pure virtual

Implemented in atlas::interpreter::component_assignment< reversed >, atlas::interpreter::multiple_assignment, atlas::interpreter::assignment_expr, atlas::interpreter::counted_for_expression< flags >, atlas::interpreter::for_expression< flags, kind >, atlas::interpreter::dont_expression, atlas::interpreter::forever_expression, atlas::interpreter::do_expression< negated >, atlas::interpreter::while_expression< flags >, atlas::interpreter::int_case_expression, atlas::interpreter::conditional_expression, atlas::interpreter::projector_call, atlas::interpreter::matrix_slice< flags >, atlas::interpreter::string_slice< flags >, atlas::interpreter::ratvec_slice< flags >, atlas::interpreter::vector_slice< flags >, atlas::interpreter::row_slice< flags >, atlas::interpreter::module_coefficient, atlas::interpreter::matrix_get_column< reversed >, atlas::interpreter::matrix_subscription< reversed >, atlas::interpreter::string_subscription< reversed >, atlas::interpreter::ratvec_subscription< reversed >, atlas::interpreter::vector_subscription< reversed >, atlas::interpreter::row_subscription< reversed >, atlas::interpreter::next_expression, atlas::interpreter::seq_expression, atlas::interpreter::lambda_expression, atlas::interpreter::let_expression, atlas::interpreter::voiding, atlas::interpreter::overloaded_call, atlas::interpreter::conversion, atlas::interpreter::call_expression, atlas::interpreter::identifier, atlas::interpreter::list_expression, atlas::interpreter::tuple_expression, atlas::interpreter::returner, atlas::interpreter::breaker, atlas::interpreter::shell, atlas::interpreter::capture_expression, and atlas::interpreter::denotation.

void atlas::interpreter::expression_base::void_eval ( ) const
inline

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