GNU Octave  9.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
symbol_record Class Reference

#include "symrec.h"

Public Types

typedef std::size_t context_id
 
enum  symrec_t : unsigned char { LOCAL = 1 , FORMAL = 2 , ADDED_STATIC = 4 , VARIABLE = 8 }
 

Public Member Functions

 symbol_record (const std::string &nm, const octave_value &, symrec_t sc=LOCAL)
 
 symbol_record (const std::string &nm="", symrec_t sc=LOCAL)
 
 symbol_record (const symbol_record &)=default
 
 ~symbol_record ()=default
 
std::size_t data_offset () const
 
octave_value dump () const
 
symbol_record dup () const
 
std::size_t frame_offset () const
 
bool is_added_static () const
 
bool is_formal () const
 
bool is_local () const
 
bool is_valid () const
 
bool is_variable () const
 
void mark_added_static ()
 
void mark_as_variable ()
 
void mark_formal ()
 
void mark_local ()
 
std::string name () const
 
 operator bool () const
 
symbol_recordoperator= (const symbol_record &)=default
 
void rename (const std::string &new_name)
 
void set_data_offset (std::size_t offset)
 
void set_frame_offset (std::size_t offset)
 
unsigned int storage_class () const
 
void unmark_added_static ()
 
void unmark_as_variable ()
 
void unmark_formal ()
 
void unmark_local ()
 

Detailed Description

Definition at line 45 of file symrec.h.

Member Typedef Documentation

◆ context_id

typedef std::size_t symbol_record::context_id

Definition at line 49 of file symrec.h.

Member Enumeration Documentation

◆ symrec_t

enum symbol_record::symrec_t : unsigned char
Enumerator
LOCAL 
FORMAL 
ADDED_STATIC 
VARIABLE 

Definition at line 51 of file symrec.h.

Constructor & Destructor Documentation

◆ symbol_record() [1/3]

symbol_record::symbol_record ( const std::string &  nm = "",
symrec_t  sc = LOCAL 
)
inline

Definition at line 176 of file symrec.h.

Referenced by dup().

◆ symbol_record() [2/3]

symbol_record::symbol_record ( const std::string &  nm,
const octave_value ,
symrec_t  sc = LOCAL 
)
inline

Definition at line 180 of file symrec.h.

◆ symbol_record() [3/3]

symbol_record::symbol_record ( const symbol_record )
default

◆ ~symbol_record()

symbol_record::~symbol_record ( )
default

Member Function Documentation

◆ data_offset()

std::size_t symbol_record::data_offset ( ) const
inline

Definition at line 203 of file symrec.h.

◆ dump()

octave_value symbol_record::dump ( ) const
inline

Definition at line 228 of file symrec.h.

Referenced by symbol_scope_rep::dump_symbols_map().

◆ dup()

symbol_record symbol_record::dup ( void  ) const
inline

Definition at line 205 of file symrec.h.

References symbol_record().

◆ frame_offset()

std::size_t symbol_record::frame_offset ( ) const
inline

Definition at line 198 of file symrec.h.

Referenced by stack_frame::make_symbol_info_list().

◆ is_added_static()

bool symbol_record::is_added_static ( ) const
inline

Definition at line 213 of file symrec.h.

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

◆ is_formal()

bool symbol_record::is_formal ( ) const
inline

◆ is_local()

bool symbol_record::is_local ( ) const
inline

Definition at line 211 of file symrec.h.

◆ is_valid()

bool symbol_record::is_valid ( ) const
inline

Definition at line 191 of file symrec.h.

Referenced by operator bool().

◆ is_variable()

bool symbol_record::is_variable ( ) const
inline

Definition at line 214 of file symrec.h.

◆ mark_added_static()

void symbol_record::mark_added_static ( )
inline

Definition at line 218 of file symrec.h.

Referenced by symbol_scope_rep::insert().

◆ mark_as_variable()

void symbol_record::mark_as_variable ( )
inline

Definition at line 219 of file symrec.h.

◆ mark_formal()

void symbol_record::mark_formal ( )
inline

Definition at line 217 of file symrec.h.

Referenced by tree_identifier::mark_as_formal_parameter().

◆ mark_local()

void symbol_record::mark_local ( )
inline

Definition at line 216 of file symrec.h.

◆ name()

◆ operator bool()

symbol_record::operator bool ( ) const
inlineexplicit

Definition at line 193 of file symrec.h.

References is_valid().

◆ operator=()

symbol_record& symbol_record::operator= ( const symbol_record )
default

◆ rename()

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

Definition at line 209 of file symrec.h.

Referenced by symbol_scope_rep::rename().

◆ set_data_offset()

void symbol_record::set_data_offset ( std::size_t  offset)
inline

◆ set_frame_offset()

void symbol_record::set_frame_offset ( std::size_t  offset)
inline

Definition at line 195 of file symrec.h.

Referenced by symbol_scope_rep::look_nonlocal().

◆ storage_class()

unsigned int symbol_record::storage_class ( ) const
inline

Definition at line 226 of file symrec.h.

◆ unmark_added_static()

void symbol_record::unmark_added_static ( )
inline

Definition at line 223 of file symrec.h.

◆ unmark_as_variable()

void symbol_record::unmark_as_variable ( )
inline

Definition at line 224 of file symrec.h.

◆ unmark_formal()

void symbol_record::unmark_formal ( )
inline

Definition at line 222 of file symrec.h.

◆ unmark_local()

void symbol_record::unmark_local ( )
inline

Definition at line 221 of file symrec.h.


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