GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave::symbol_record::symbol_record_rep Class Reference
Collaboration diagram for octave::symbol_record::symbol_record_rep:

Public Member Functions

 symbol_record_rep (const std::string &nm, const octave_value &v, unsigned int sc)
 
 symbol_record_rep (const symbol_record_rep &ov)=delete
 
 ~symbol_record_rep (void)=default
 
void assign (const octave_value &value, context_id context)
 
void assign (octave_value::assign_op op, const std::string &type, const std::list< octave_value_list > &idx, const octave_value &value, context_id context)
 
void assign (octave_value::assign_op op, const octave_value &value, context_id context)
 
void bind_fwd_rep (const std::shared_ptr< symbol_scope_rep > &fwd_scope, const std::shared_ptr< symbol_record_rep > &fwd_rep)
 
void clear (context_id context)
 
void do_non_const_unary_op (octave_value::unary_op op, context_id context)
 
void do_non_const_unary_op (octave_value::unary_op op, const std::string &type, const std::list< octave_value_list > &idx, context_id context)
 
octave_value dump (context_id context) const
 
std::shared_ptr< symbol_record_repdup (const std::shared_ptr< symbol_scope_rep > &new_scope) const
 
context_id get_fwd_scope_context (void) const
 
void init_persistent (void)
 
bool is_added_static (void) const
 
bool is_automatic (void) const
 
bool is_defined (context_id context) const
 
bool is_formal (void) const
 
bool is_forwarded (void) const
 
bool is_global (void) const
 
bool is_hidden (void) const
 
bool is_inherited (void) const
 
bool is_local (void) const
 
bool is_marked_global (void) const
 
bool is_persistent (void) const
 
bool is_variable (context_id context) const
 
void mark_added_static (void)
 
void mark_automatic (void)
 
void mark_formal (void)
 
void mark_global (void)
 
void mark_hidden (void)
 
void mark_inherited (void)
 
void mark_local (void)
 
void mark_persistent (void)
 
std::string name (void) const
 
symbol_record_repoperator= (const symbol_record_rep &)=delete
 
context_id pop_context (void)
 
void push_context (void)
 
void rename (const std::string &new_name)
 
unsigned int storage_class (void) const
 
void unbind_fwd_rep (void)
 
void unbind_global_rep (void)
 
void unmark_added_static (void)
 
void unmark_automatic (void)
 
void unmark_formal (void)
 
void unmark_hidden (void)
 
void unmark_inherited (void)
 
void unmark_local (void)
 
void unmark_persistent (void)
 
octave_valuevarref (context_id context)
 
octave_value varval (context_id context) const
 

Private Attributes

std::weak_ptr< symbol_record_repm_fwd_rep
 
std::weak_ptr< symbol_scope_repm_fwd_scope
 
std::string m_name
 
unsigned int m_storage_class
 
std::deque< octave_valuem_value_stack
 

Detailed Description

Definition at line 77 of file symrec.h.

Constructor & Destructor Documentation

◆ symbol_record_rep() [1/2]

octave::symbol_record::symbol_record_rep::symbol_record_rep ( const std::string nm,
const octave_value v,
unsigned int  sc 
)
inline

Definition at line 81 of file symrec.h.

References m_value_stack.

◆ symbol_record_rep() [2/2]

octave::symbol_record::symbol_record_rep::symbol_record_rep ( const symbol_record_rep ov)
delete

◆ ~symbol_record_rep()

octave::symbol_record::symbol_record_rep::~symbol_record_rep ( void  )
default

Member Function Documentation

◆ assign() [1/3]

void octave::symbol_record::symbol_record_rep::assign ( const octave_value value,
context_id  context 
)
inline

Definition at line 97 of file symrec.h.

References octave::context, value, and varref().

Referenced by clear().

◆ assign() [2/3]

void octave::symbol_record::symbol_record_rep::assign ( octave_value::assign_op  op,
const std::string type,
const std::list< octave_value_list > &  idx,
const octave_value value,
context_id  context 
)
inline

Definition at line 102 of file symrec.h.

References octave_value::assign(), octave::context, type, value, and varref().

◆ assign() [3/3]

void octave::symbol_record::symbol_record_rep::assign ( octave_value::assign_op  op,
const octave_value value,
context_id  context 
)
inline

Definition at line 110 of file symrec.h.

References octave_value::assign(), octave::context, value, and varref().

◆ bind_fwd_rep()

void octave::symbol_record::symbol_record_rep::bind_fwd_rep ( const std::shared_ptr< symbol_scope_rep > &  fwd_scope,
const std::shared_ptr< symbol_record_rep > &  fwd_rep 
)
inline

Definition at line 479 of file symrec.h.

References m_fwd_rep, and m_fwd_scope.

◆ clear()

void octave::symbol_record::symbol_record_rep::clear ( context_id  context)
inline

◆ do_non_const_unary_op() [1/2]

void octave::symbol_record::symbol_record_rep::do_non_const_unary_op ( octave_value::unary_op  op,
context_id  context 
)
inline

Definition at line 116 of file symrec.h.

References octave::context, octave_value::do_non_const_unary_op(), and varref().

◆ do_non_const_unary_op() [2/2]

void octave::symbol_record::symbol_record_rep::do_non_const_unary_op ( octave_value::unary_op  op,
const std::string type,
const std::list< octave_value_list > &  idx,
context_id  context 
)
inline

Definition at line 122 of file symrec.h.

References octave::context, octave_value::do_non_const_unary_op(), type, and varref().

◆ dump()

◆ dup()

std::shared_ptr< symbol_record::symbol_record_rep > octave::symbol_record::symbol_record_rep::dup ( const std::shared_ptr< symbol_scope_rep > &  new_scope) const

Definition at line 69 of file symrec.cc.

References octave::symbol_record::varval().

◆ get_fwd_scope_context()

symbol_record::context_id octave::symbol_record::symbol_record_rep::get_fwd_scope_context ( void  ) const

Definition at line 45 of file symrec.cc.

References m_fwd_scope.

Referenced by varref(), and varval().

◆ init_persistent()

void octave::symbol_record::symbol_record_rep::init_persistent ( void  )

Definition at line 57 of file symrec.cc.

References octave::symbol_record::mark_persistent().

◆ is_added_static()

bool octave::symbol_record::symbol_record_rep::is_added_static ( void  ) const
inline

Definition at line 294 of file symrec.h.

References octave::symbol_record::added_static, m_fwd_rep, and m_storage_class.

◆ is_automatic()

bool octave::symbol_record::symbol_record_rep::is_automatic ( void  ) const
inline

Definition at line 241 of file symrec.h.

References octave::symbol_record::automatic, m_fwd_rep, and m_storage_class.

◆ is_defined()

bool octave::symbol_record::symbol_record_rep::is_defined ( context_id  context) const
inline

Definition at line 220 of file symrec.h.

References octave::context, octave_value::is_defined(), and varval().

Referenced by is_variable().

◆ is_formal()

bool octave::symbol_record::symbol_record_rep::is_formal ( void  ) const
inline

Definition at line 249 of file symrec.h.

References octave::symbol_record::formal, m_fwd_rep, and m_storage_class.

Referenced by mark_persistent().

◆ is_forwarded()

bool octave::symbol_record::symbol_record_rep::is_forwarded ( void  ) const
inline

Definition at line 273 of file symrec.h.

References m_fwd_rep.

◆ is_global()

bool octave::symbol_record::symbol_record_rep::is_global ( void  ) const
inline

Definition at line 278 of file symrec.h.

References is_marked_global(), and m_fwd_rep.

Referenced by clear(), mark_persistent(), pop_context(), and push_context().

◆ is_hidden()

bool octave::symbol_record::symbol_record_rep::is_hidden ( void  ) const
inline

Definition at line 257 of file symrec.h.

References octave::symbol_record::hidden, m_fwd_rep, and m_storage_class.

Referenced by clear().

◆ is_inherited()

bool octave::symbol_record::symbol_record_rep::is_inherited ( void  ) const
inline

Definition at line 265 of file symrec.h.

References octave::symbol_record::inherited, m_fwd_rep, and m_storage_class.

Referenced by clear().

◆ is_local()

bool octave::symbol_record::symbol_record_rep::is_local ( void  ) const
inline

Definition at line 233 of file symrec.h.

References octave::symbol_record::local, m_fwd_rep, and m_storage_class.

Referenced by is_variable().

◆ is_marked_global()

bool octave::symbol_record::symbol_record_rep::is_marked_global ( void  ) const
inline

Definition at line 366 of file symrec.h.

References octave::symbol_record::global, and m_storage_class.

Referenced by is_global().

◆ is_persistent()

bool octave::symbol_record::symbol_record_rep::is_persistent ( void  ) const
inline

Definition at line 286 of file symrec.h.

References m_fwd_rep, m_storage_class, and octave::symbol_record::persistent.

Referenced by clear(), pop_context(), push_context(), varref(), and varval().

◆ is_variable()

bool octave::symbol_record::symbol_record_rep::is_variable ( context_id  context) const
inline

Definition at line 225 of file symrec.h.

References octave::context, is_defined(), is_local(), and m_fwd_rep.

◆ mark_added_static()

void octave::symbol_record::symbol_record_rep::mark_added_static ( void  )
inline

Definition at line 387 of file symrec.h.

References octave::symbol_record::added_static, m_fwd_rep, and m_storage_class.

◆ mark_automatic()

void octave::symbol_record::symbol_record_rep::mark_automatic ( void  )
inline

Definition at line 313 of file symrec.h.

References octave::symbol_record::automatic, m_fwd_rep, and m_storage_class.

◆ mark_formal()

void octave::symbol_record::symbol_record_rep::mark_formal ( void  )
inline

Definition at line 324 of file symrec.h.

References octave::symbol_record::formal, m_fwd_rep, and m_storage_class.

◆ mark_global()

void octave::symbol_record::symbol_record_rep::mark_global ( void  )
inline

Definition at line 361 of file symrec.h.

References octave::symbol_record::global, and m_storage_class.

◆ mark_hidden()

void octave::symbol_record::symbol_record_rep::mark_hidden ( void  )
inline

Definition at line 335 of file symrec.h.

References octave::symbol_record::hidden, m_fwd_rep, and m_storage_class.

◆ mark_inherited()

void octave::symbol_record::symbol_record_rep::mark_inherited ( void  )
inline

Definition at line 346 of file symrec.h.

References octave::symbol_record::inherited, m_fwd_rep, and m_storage_class.

◆ mark_local()

void octave::symbol_record::symbol_record_rep::mark_local ( void  )
inline

Definition at line 302 of file symrec.h.

References octave::symbol_record::local, m_fwd_rep, and m_storage_class.

◆ mark_persistent()

void octave::symbol_record::symbol_record_rep::mark_persistent ( void  )
inline

◆ name()

std::string octave::symbol_record::symbol_record_rep::name ( void  ) const
inline

Definition at line 540 of file symrec.h.

References m_name.

◆ operator=()

symbol_record_rep& octave::symbol_record::symbol_record_rep::operator= ( const symbol_record_rep )
delete

◆ pop_context()

context_id octave::symbol_record::symbol_record_rep::pop_context ( void  )
inline

Definition at line 184 of file symrec.h.

References is_global(), is_persistent(), m_fwd_rep, m_value_stack, and retval.

◆ push_context()

void octave::symbol_record::symbol_record_rep::push_context ( void  )
inline

Definition at line 161 of file symrec.h.

References is_global(), is_persistent(), m_fwd_rep, and m_value_stack.

◆ rename()

void octave::symbol_record::symbol_record_rep::rename ( const std::string new_name)
inline

Definition at line 542 of file symrec.h.

References m_name.

◆ storage_class()

unsigned int octave::symbol_record::symbol_record_rep::storage_class ( void  ) const
inline

Definition at line 475 of file symrec.h.

References m_storage_class.

◆ unbind_fwd_rep()

void octave::symbol_record::symbol_record_rep::unbind_fwd_rep ( void  )
inline

Definition at line 503 of file symrec.h.

References m_fwd_rep, and m_fwd_scope.

◆ unbind_global_rep()

void octave::symbol_record::symbol_record_rep::unbind_global_rep ( void  )
inline

Definition at line 514 of file symrec.h.

References m_fwd_rep, and m_fwd_scope.

Referenced by clear().

◆ unmark_added_static()

void octave::symbol_record::symbol_record_rep::unmark_added_static ( void  )
inline

Definition at line 464 of file symrec.h.

References octave::symbol_record::added_static, m_fwd_rep, and m_storage_class.

◆ unmark_automatic()

void octave::symbol_record::symbol_record_rep::unmark_automatic ( void  )
inline

Definition at line 409 of file symrec.h.

References octave::symbol_record::automatic, m_fwd_rep, and m_storage_class.

◆ unmark_formal()

void octave::symbol_record::symbol_record_rep::unmark_formal ( void  )
inline

Definition at line 420 of file symrec.h.

References octave::symbol_record::formal, m_fwd_rep, and m_storage_class.

◆ unmark_hidden()

void octave::symbol_record::symbol_record_rep::unmark_hidden ( void  )
inline

Definition at line 431 of file symrec.h.

References octave::symbol_record::hidden, m_fwd_rep, and m_storage_class.

◆ unmark_inherited()

void octave::symbol_record::symbol_record_rep::unmark_inherited ( void  )
inline

Definition at line 442 of file symrec.h.

References octave::symbol_record::inherited, m_fwd_rep, and m_storage_class.

◆ unmark_local()

void octave::symbol_record::symbol_record_rep::unmark_local ( void  )
inline

Definition at line 398 of file symrec.h.

References octave::symbol_record::local, m_fwd_rep, and m_storage_class.

◆ unmark_persistent()

void octave::symbol_record::symbol_record_rep::unmark_persistent ( void  )
inline

Definition at line 453 of file symrec.h.

References m_fwd_rep, m_storage_class, and octave::symbol_record::persistent.

Referenced by clear().

◆ varref()

octave_value& octave::symbol_record::symbol_record_rep::varref ( context_id  context)
inline

Definition at line 132 of file symrec.h.

References octave::context, get_fwd_scope_context(), is_persistent(), m_fwd_rep, and m_value_stack.

Referenced by assign(), and do_non_const_unary_op().

◆ varval()

octave_value octave::symbol_record::symbol_record_rep::varval ( context_id  context) const
inline

Member Data Documentation

◆ m_fwd_rep

◆ m_fwd_scope

std::weak_ptr<symbol_scope_rep> octave::symbol_record::symbol_record_rep::m_fwd_scope
private

Definition at line 550 of file symrec.h.

Referenced by bind_fwd_rep(), get_fwd_scope_context(), unbind_fwd_rep(), and unbind_global_rep().

◆ m_name

std::string octave::symbol_record::symbol_record_rep::m_name
private

Definition at line 548 of file symrec.h.

Referenced by mark_persistent(), name(), and rename().

◆ m_storage_class

◆ m_value_stack

std::deque<octave_value> octave::symbol_record::symbol_record_rep::m_value_stack
private

Definition at line 554 of file symrec.h.

Referenced by pop_context(), push_context(), symbol_record_rep(), varref(), and varval().


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