GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
symbol_table::symbol_record Class Reference

#include "symtab.h"

Collaboration diagram for symbol_table::symbol_record:
Collaboration graph
[legend]

Classes

class  symbol_record_rep
 

Public Member Functions

 symbol_record (scope_id s=xcurrent_scope, const std::string &nm=std::string(), const octave_value &v=octave_value(), unsigned int sc=local)
 
 symbol_record (const symbol_record &sr)
 
 ~symbol_record (void)
 
context_id active_context (void) const
 
void assign (const octave_value &value, context_id context=xdefault_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=xdefault_context)
 
void assign (octave_value::assign_op op, const octave_value &value, context_id context=xdefault_context)
 
void clear (void)
 
void clear (scope_id s)
 
void do_non_const_unary_op (octave_value::unary_op op)
 
void do_non_const_unary_op (octave_value::unary_op op, const std::string &type, const std::list< octave_value_list > &idx)
 
void dump (std::ostream &os, const std::string &prefix=std::string()) const
 
symbol_record dup (scope_id new_scope) const
 
void erase_persistent (void)
 
octave_value find (const octave_value_list &args=octave_value_list()) const
 
void init_persistent (void)
 
void invalidate (void)
 
bool is_added_static (void) const
 
bool is_automatic (void) const
 
bool is_defined (context_id context=xdefault_context) const
 
bool is_formal (void) const
 
bool is_global (void) const
 
bool is_hidden (void) const
 
bool is_inherited (void) const
 
bool is_local (void) const
 
bool is_persistent (void) const
 
bool is_undefined (context_id context=xdefault_context) const
 
bool is_valid (void) const
 
bool is_variable (context_id context=xdefault_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)
 
const std::string & name (void) const
 
symbol_recordoperator= (const symbol_record &sr)
 
size_t pop_context (scope_id s)
 
void push_context (scope_id s)
 
void rename (const std::string &new_name)
 
scope_id scope (void) const
 
void set_curr_fcn (octave_user_function *fcn)
 
void unmark_added_static (void)
 
void unmark_automatic (void)
 
void unmark_formal (void)
 
void unmark_global (void)
 
void unmark_hidden (void)
 
void unmark_inherited (void)
 
void unmark_local (void)
 
void unmark_persistent (void)
 
octave_valuevarref (context_id context=xdefault_context)
 
octave_value varval (context_id context=xdefault_context) const
 
unsigned int xstorage_class (void) const
 

Static Public Attributes

static const unsigned int added_static = 128
 
static const unsigned int automatic = 2
 
static const unsigned int formal = 4
 
static const unsigned int global = 32
 
static const unsigned int hidden = 8
 
static const unsigned int inherited = 16
 
static const unsigned int local = 1
 
static const unsigned int persistent = 64
 

Private Member Functions

 symbol_record (symbol_record_rep *new_rep)
 

Private Attributes

symbol_record_reprep
 

Detailed Description

Definition at line 173 of file symtab.h.

Constructor & Destructor Documentation

symbol_table::symbol_record::symbol_record ( scope_id  s = xcurrent_scope,
const std::string &  nm = std::string (),
const octave_value v = octave_value (),
unsigned int  sc = local 
)
inline

Definition at line 491 of file symtab.h.

symbol_table::symbol_record::symbol_record ( const symbol_record sr)
inline

Definition at line 497 of file symtab.h.

symbol_table::symbol_record::~symbol_record ( void  )
inline

Definition at line 517 of file symtab.h.

symbol_table::symbol_record::symbol_record ( symbol_record_rep new_rep)
inlineprivate

Definition at line 658 of file symtab.h.

Member Function Documentation

context_id symbol_table::symbol_record::active_context ( void  ) const
inline

Definition at line 640 of file symtab.h.

void symbol_table::symbol_record::assign ( const octave_value value,
context_id  context = xdefault_context 
)
inline

Definition at line 535 of file symtab.h.

References context.

Referenced by octave_lvalue::assign(), symbol_table::do_assign(), and symbol_table::do_inherit().

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

Definition at line 541 of file symtab.h.

References context.

void symbol_table::symbol_record::assign ( octave_value::assign_op  op,
const octave_value value,
context_id  context = xdefault_context 
)
inline

Definition at line 550 of file symtab.h.

References context.

void symbol_table::symbol_record::clear ( void  )
inline
void symbol_table::symbol_record::clear ( scope_id  s)
inline

Definition at line 585 of file symtab.h.

void symbol_table::symbol_record::do_non_const_unary_op ( octave_value::unary_op  op)
inline

Definition at line 556 of file symtab.h.

Referenced by octave_lvalue::do_unary_op().

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

Definition at line 561 of file symtab.h.

void symbol_table::symbol_record::dump ( std::ostream &  os,
const std::string &  prefix = std::string () 
) const
inline

Definition at line 649 of file symtab.h.

symbol_record symbol_table::symbol_record::dup ( scope_id  new_scope) const
inline

Definition at line 523 of file symtab.h.

void symbol_table::symbol_record::erase_persistent ( void  )
inline

Definition at line 636 of file symtab.h.

octave_value symbol_table::symbol_record::find ( const octave_value_list args = octave_value_list ()) const
void symbol_table::symbol_record::init_persistent ( void  )
inline

Definition at line 634 of file symtab.h.

void symbol_table::symbol_record::invalidate ( void  )
inline

Definition at line 638 of file symtab.h.

Referenced by symbol_table::do_update_nest().

bool symbol_table::symbol_record::is_added_static ( void  ) const
inline

Definition at line 614 of file symtab.h.

Referenced by tree_identifier::lvalue(), and tree_identifier::rvalue().

bool symbol_table::symbol_record::is_automatic ( void  ) const
inline

Definition at line 608 of file symtab.h.

Referenced by symbol_table::do_inherit(), and symbol_table::do_workspace_info().

bool symbol_table::symbol_record::is_defined ( context_id  context = xdefault_context) const
inline
bool symbol_table::symbol_record::is_formal ( void  ) const
inline
bool symbol_table::symbol_record::is_global ( void  ) const
inline
bool symbol_table::symbol_record::is_hidden ( void  ) const
inline

Definition at line 611 of file symtab.h.

Referenced by symbol_table::do_workspace_info().

bool symbol_table::symbol_record::is_inherited ( void  ) const
inline

Definition at line 612 of file symtab.h.

Referenced by symbol_table::do_workspace_info().

bool symbol_table::symbol_record::is_local ( void  ) const
inline

Definition at line 607 of file symtab.h.

bool symbol_table::symbol_record::is_persistent ( void  ) const
inline
bool symbol_table::symbol_record::is_undefined ( context_id  context = xdefault_context) const
inline

Definition at line 592 of file symtab.h.

References context.

bool symbol_table::symbol_record::is_valid ( void  ) const
inline

Definition at line 597 of file symtab.h.

bool symbol_table::symbol_record::is_variable ( context_id  context = xdefault_context) const
inline

Definition at line 602 of file symtab.h.

References context.

Referenced by symbol_table::do_glob(), symbol_table::do_is_variable(), and symbol_table::do_regexp().

void symbol_table::symbol_record::mark_added_static ( void  )
inline

Definition at line 623 of file symtab.h.

Referenced by symbol_table::do_insert().

void symbol_table::symbol_record::mark_automatic ( void  )
inline

Definition at line 617 of file symtab.h.

void symbol_table::symbol_record::mark_formal ( void  )
inline

Definition at line 618 of file symtab.h.

void symbol_table::symbol_record::mark_global ( void  )
inline

Definition at line 621 of file symtab.h.

void symbol_table::symbol_record::mark_hidden ( void  )
inline

Definition at line 619 of file symtab.h.

void symbol_table::symbol_record::mark_inherited ( void  )
inline

Definition at line 620 of file symtab.h.

Referenced by symbol_table::do_inherit().

void symbol_table::symbol_record::mark_local ( void  )
inline

Definition at line 616 of file symtab.h.

void symbol_table::symbol_record::mark_persistent ( void  )
inline

Definition at line 622 of file symtab.h.

const std::string& symbol_table::symbol_record::name ( void  ) const
inline
symbol_record& symbol_table::symbol_record::operator= ( const symbol_record sr)
inline

Definition at line 503 of file symtab.h.

References symbol_table::symbol_record::symbol_record_rep::count, and rep.

size_t symbol_table::symbol_record::pop_context ( scope_id  s)
inline

Definition at line 581 of file symtab.h.

void symbol_table::symbol_record::push_context ( scope_id  s)
inline

Definition at line 579 of file symtab.h.

void symbol_table::symbol_record::rename ( const std::string &  new_name)
inline

Definition at line 530 of file symtab.h.

Referenced by symbol_table::do_rename().

scope_id symbol_table::symbol_record::scope ( void  ) const
inline

Definition at line 642 of file symtab.h.

void symbol_table::symbol_record::set_curr_fcn ( octave_user_function fcn)
inline

Definition at line 646 of file symtab.h.

Referenced by symbol_table::do_update_nest().

void symbol_table::symbol_record::unmark_added_static ( void  )
inline

Definition at line 632 of file symtab.h.

void symbol_table::symbol_record::unmark_automatic ( void  )
inline

Definition at line 626 of file symtab.h.

void symbol_table::symbol_record::unmark_formal ( void  )
inline

Definition at line 627 of file symtab.h.

void symbol_table::symbol_record::unmark_global ( void  )
inline
void symbol_table::symbol_record::unmark_hidden ( void  )
inline

Definition at line 628 of file symtab.h.

void symbol_table::symbol_record::unmark_inherited ( void  )
inline

Definition at line 629 of file symtab.h.

void symbol_table::symbol_record::unmark_local ( void  )
inline

Definition at line 625 of file symtab.h.

void symbol_table::symbol_record::unmark_persistent ( void  )
inline

Definition at line 631 of file symtab.h.

octave_value& symbol_table::symbol_record::varref ( context_id  context = xdefault_context)
inline

Definition at line 569 of file symtab.h.

References context.

Referenced by symbol_table::do_varref().

octave_value symbol_table::symbol_record::varval ( context_id  context = xdefault_context) const
inline
unsigned int symbol_table::symbol_record::xstorage_class ( void  ) const
inline

Definition at line 644 of file symtab.h.

Referenced by symbol_table::do_all_variables().

Member Data Documentation

const unsigned int symbol_table::symbol_record::added_static = 128
static

Definition at line 202 of file symtab.h.

const unsigned int symbol_table::symbol_record::automatic = 2
static

Definition at line 183 of file symtab.h.

const unsigned int symbol_table::symbol_record::formal = 4
static

Definition at line 186 of file symtab.h.

const unsigned int symbol_table::symbol_record::global = 32
static

Definition at line 195 of file symtab.h.

const unsigned int symbol_table::symbol_record::hidden = 8
static

Definition at line 189 of file symtab.h.

const unsigned int symbol_table::symbol_record::inherited = 16
static

Definition at line 192 of file symtab.h.

const unsigned int symbol_table::symbol_record::local = 1
static

Definition at line 179 of file symtab.h.

const unsigned int symbol_table::symbol_record::persistent = 64
static

Definition at line 198 of file symtab.h.

symbol_record_rep* symbol_table::symbol_record::rep
private

Definition at line 656 of file symtab.h.

Referenced by operator=().


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