Loading...
Searching...
No Matches
ledger::child_scope_t Class Referenceabstract

#include <scope.h>

+ Inheritance diagram for ledger::child_scope_t:
+ Collaboration diagram for ledger::child_scope_t:

Public Member Functions

 child_scope_t ()
 
 child_scope_t (scope_t &_parent)
 
virtual void define (const symbol_t::kind_t kind, const string &name, expr_t::ptr_op_t def)
 
virtual string description ()=0
 
virtual expr_t::ptr_op_t lookup (const symbol_t::kind_t kind, const string &name)
 
virtual value_t::type_t type_context () const
 
virtual bool type_required () const
 
virtual ~child_scope_t ()
 

Public Attributes

scope_tparent
 

Static Public Attributes

static scope_tdefault_scope
 
static empty_scope_tempty_scope
 

Detailed Description

Definition at line 135 of file scope.h.

Constructor & Destructor Documentation

◆ child_scope_t() [1/2]

ledger::child_scope_t::child_scope_t ( )
inlineexplicit

Definition at line 140 of file scope.h.

References TRACE_CTOR.

◆ child_scope_t() [2/2]

ledger::child_scope_t::child_scope_t ( scope_t & _parent)
inlineexplicit

Definition at line 143 of file scope.h.

References TRACE_CTOR.

◆ ~child_scope_t()

virtual ledger::child_scope_t::~child_scope_t ( )
inlinevirtual

Definition at line 146 of file scope.h.

References TRACE_DTOR.

Member Function Documentation

◆ define()

virtual void ledger::child_scope_t::define ( const symbol_t::kind_t kind,
const string & name,
expr_t::ptr_op_t def )
inlinevirtual

Reimplemented from ledger::scope_t.

Reimplemented in ledger::bind_scope_t, and ledger::symbol_scope_t.

Definition at line 150 of file scope.h.

References ledger::scope_t::define(), ledger::downcast(), and parent.

+ Here is the call graph for this function:

◆ description()

◆ lookup()

virtual expr_t::ptr_op_t ledger::child_scope_t::lookup ( const symbol_t::kind_t kind,
const string & name )
inlinevirtual

Implements ledger::scope_t.

Reimplemented in ledger::bind_scope_t, ledger::symbol_scope_t, ledger::value_scope_t, and ledger::session_t.

Definition at line 156 of file scope.h.

References ledger::downcast(), ledger::scope_t::lookup(), and parent.

Referenced by ledger::bind_scope_t::lookup(), and ledger::value_scope_t::lookup().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ type_context()

virtual value_t::type_t ledger::scope_t::type_context ( ) const
inlinevirtualinherited

Reimplemented in ledger::context_scope_t.

Definition at line 109 of file scope.h.

References ledger::value_t::VOID.

◆ type_required()

virtual bool ledger::scope_t::type_required ( ) const
inlinevirtualinherited

Reimplemented in ledger::context_scope_t.

Definition at line 112 of file scope.h.

Member Data Documentation

◆ default_scope

scope_t* ledger::scope_t::default_scope
staticinherited

◆ empty_scope

empty_scope_t* ledger::scope_t::empty_scope
staticinherited

Definition at line 93 of file scope.h.

◆ parent


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