Mercurial > octave
changeset 24272:dd810f9d26e7
use m_ prefix for symbol_record class data members
* symrec.h, symrec.cc (class symbol_record::symbol_record_rep,
class symbol_record): Use m_prefix for all class data members.
(symbol_record::storage_class): Rename function from xstorage_class.
(symbol_record_rep::name, symbol_record_rep::rename): New functions.
Use them instead of accessing symbol_record_rep::m_name directly.
(class symbol_record::symbol_record_rep): Make all data members private.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 17 Nov 2017 11:36:55 -0500 |
parents | 0dd6c909baa2 |
children | 52023a3fe713 |
files | libinterp/corefcn/symrec.cc libinterp/corefcn/symrec.h libinterp/corefcn/symscope.h |
diffstat | 3 files changed, 126 insertions(+), 133 deletions(-) [+] |
line wrap: on
line diff
--- a/libinterp/corefcn/symrec.cc Fri Nov 17 09:12:11 2017 -0500 +++ b/libinterp/corefcn/symrec.cc Fri Nov 17 11:36:55 2017 -0500 @@ -64,7 +64,7 @@ if (is_persistent ()) { - sid->persistent_assign (name, varval ()); + sid->persistent_assign (m_name, varval ()); unmark_persistent (); } @@ -89,7 +89,7 @@ { mark_persistent (); - assign (curr_scope->persistent_varval (name)); + assign (curr_scope->persistent_varval (m_name)); } // FIXME: this causes trouble with recursive calls. // else @@ -110,7 +110,7 @@ symbol_scope *curr_scope = __require_current_scope__ ("symbol_record::symbol_record_rep::erase_persistent"); - curr_scope->erase_persistent (name); + curr_scope->erase_persistent (m_name); } symbol_record::symbol_record_rep * @@ -120,7 +120,8 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->dup (new_scope); - return new symbol_record_rep (new_scope, name, varval (), storage_class); + return new symbol_record_rep (new_scope, m_name, varval (), + m_storage_class); } octave_value @@ -130,7 +131,7 @@ return t_fwd_rep->dump (); std::map<std::string, octave_value> m - = {{ "name", name }, + = {{ "name", m_name }, { "local", is_local () }, { "automatic", is_automatic () }, { "formal", is_formal () }, @@ -156,7 +157,7 @@ symbol_table& symtab = __get_symbol_table__ ("symbol_record::symbol_record_rep::xglobal_varref"); - return symtab.global_varref (name); + return symtab.global_varref (m_name); } octave_value& @@ -169,7 +170,7 @@ = __get_current_scope__ ("symbol_record::symbol_record_rep::xpersistent_varref"); return (curr_scope - ? curr_scope->persistent_varref (name) : dummy_octave_value); + ? curr_scope->persistent_varref (m_name) : dummy_octave_value); } octave_value @@ -181,7 +182,7 @@ symbol_table& symtab = __get_symbol_table__ ("symbol_record::symbol_record_rep::xglobal_varval"); - return symtab.global_varval (name); + return symtab.global_varval (m_name); } octave_value @@ -193,12 +194,13 @@ symbol_scope *curr_scope = __get_current_scope__ ("symbol_record::symbol_record_rep::xpersistent_varval"); - return curr_scope ? curr_scope->persistent_varval (name) : octave_value (); + return (curr_scope + ? curr_scope->persistent_varval (m_name) : octave_value ()); } symbol_record::symbol_record (void) - : rep (new symbol_record_rep (__get_current_scope__ ("symbol_record"), - "", octave_value (), local)) + : m_rep (new symbol_record_rep (__get_current_scope__ ("symbol_record"), + "", octave_value (), local)) { } @@ -218,23 +220,10 @@ if (retval.is_undefined ()) { -#if 0 - // Use cached fcn_info pointer if possible. - if (rep->finfo) - retval = rep->finfo->find (args); - else -#endif - { - retval = symtab.find_function (name (), args); + retval = symtab.find_function (name (), args); - if (retval.is_defined ()) - return retval; -#if 0 - { - rep->finfo = symtab.get_fcn_info (name ()); - } -#endif - } + if (retval.is_defined ()) + return retval; } }
--- a/libinterp/corefcn/symrec.h Fri Nov 17 09:12:11 2017 -0500 +++ b/libinterp/corefcn/symrec.h Fri Nov 17 11:36:55 2017 -0500 @@ -38,7 +38,6 @@ namespace octave { - class fcn_info; class symbol_scope; class symbol_record @@ -81,11 +80,11 @@ symbol_record_rep (symbol_scope *s, const std::string& nm, const octave_value& v, unsigned int sc) - : m_decl_scope (s), curr_fcn (nullptr), name (nm), - m_fwd_rep (), value_stack (), - storage_class (sc), /* finfo (), */ valid (true) + : m_decl_scope (s), m_curr_fcn (nullptr), m_name (nm), + m_fwd_rep (), m_value_stack (), m_storage_class (sc), + m_valid (true) { - value_stack.push_back (v); + m_value_stack.push_back (v); } // No copying! @@ -171,11 +170,11 @@ return xpersistent_varref (); else { - context_id n = value_stack.size (); + context_id n = m_value_stack.size (); while (n++ <= context) - value_stack.push_back (octave_value ()); + m_value_stack.push_back (octave_value ()); - return value_stack[context]; + return m_value_stack[context]; } } @@ -192,8 +191,8 @@ return xpersistent_varval (); else { - if (context < value_stack.size ()) - return value_stack[context]; + if (context < m_value_stack.size ()) + return m_value_stack[context]; else return octave_value (); } @@ -209,7 +208,7 @@ if (! (is_persistent () || is_global ()) && sid == decl_scope ()) - value_stack.push_back (octave_value ()); + m_value_stack.push_back (octave_value ()); } // If pop_context returns 0, we are out of values and this element @@ -236,8 +235,8 @@ if (! (is_persistent () || is_global ()) && sid == decl_scope ()) { - value_stack.pop_back (); - retval = value_stack.size (); + m_value_stack.pop_back (); + retval = m_value_stack.size (); } return retval; @@ -269,7 +268,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_valid (); - return valid; + return m_valid; } bool is_variable (void) const @@ -285,7 +284,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_local (); - return storage_class & local; + return m_storage_class & local; } bool is_automatic (void) const @@ -293,7 +292,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_automatic (); - return storage_class & automatic; + return m_storage_class & automatic; } bool is_formal (void) const @@ -301,7 +300,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_formal (); - return storage_class & formal; + return m_storage_class & formal; } bool is_hidden (void) const @@ -309,7 +308,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_hidden (); - return storage_class & hidden; + return m_storage_class & hidden; } bool is_inherited (void) const @@ -317,7 +316,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_inherited (); - return storage_class & inherited; + return m_storage_class & inherited; } bool is_global (void) const @@ -325,7 +324,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_global (); - return storage_class & global; + return m_storage_class & global; } bool is_persistent (void) const @@ -333,7 +332,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_persistent (); - return storage_class & persistent; + return m_storage_class & persistent; } bool is_added_static (void) const @@ -341,7 +340,7 @@ if (auto t_fwd_rep = m_fwd_rep.lock ()) return t_fwd_rep->is_added_static (); - return storage_class & added_static; + return m_storage_class & added_static; } void mark_local (void) @@ -352,7 +351,7 @@ return; } - storage_class |= local; + m_storage_class |= local; } void mark_automatic (void) @@ -363,7 +362,7 @@ return; } - storage_class |= automatic; + m_storage_class |= automatic; } void mark_formal (void) @@ -374,7 +373,7 @@ return; } - storage_class |= formal; + m_storage_class |= formal; } void mark_hidden (void) @@ -385,7 +384,7 @@ return; } - storage_class |= hidden; + m_storage_class |= hidden; } void mark_inherited (void) @@ -396,7 +395,7 @@ return; } - storage_class |= inherited; + m_storage_class |= inherited; } void mark_global (void) @@ -408,9 +407,9 @@ } if (is_persistent ()) - error ("can't make persistent variable %s global", name.c_str ()); + error ("can't make persistent variable %s global", m_name.c_str ()); - storage_class |= global; + m_storage_class |= global; } void mark_persistent (void) @@ -422,9 +421,9 @@ } if (is_global ()) - error ("can't make global variable %s persistent", name.c_str ()); + error ("can't make global variable %s persistent", m_name.c_str ()); - storage_class |= persistent; + m_storage_class |= persistent; } void mark_added_static (void) @@ -435,7 +434,7 @@ return; } - storage_class |= added_static; + m_storage_class |= added_static; } void unmark_local (void) @@ -446,7 +445,7 @@ return; } - storage_class &= ~local; + m_storage_class &= ~local; } void unmark_automatic (void) @@ -457,7 +456,7 @@ return; } - storage_class &= ~automatic; + m_storage_class &= ~automatic; } void unmark_formal (void) @@ -468,7 +467,7 @@ return; } - storage_class &= ~formal; + m_storage_class &= ~formal; } void unmark_hidden (void) @@ -479,7 +478,7 @@ return; } - storage_class &= ~hidden; + m_storage_class &= ~hidden; } void unmark_inherited (void) @@ -490,7 +489,7 @@ return; } - storage_class &= ~inherited; + m_storage_class &= ~inherited; } void unmark_global (void) @@ -501,7 +500,7 @@ return; } - storage_class &= ~global; + m_storage_class &= ~global; } void unmark_persistent (void) @@ -512,7 +511,7 @@ return; } - storage_class &= ~persistent; + m_storage_class &= ~persistent; } void unmark_added_static (void) @@ -523,9 +522,11 @@ return; } - storage_class &= ~added_static; + m_storage_class &= ~added_static; } + unsigned int storage_class (void) const { return m_storage_class; } + void init_persistent (void); void invalidate (void) @@ -536,7 +537,7 @@ return; } - valid = false; + m_valid = false; } void erase_persistent (void); @@ -557,7 +558,7 @@ return; } - curr_fcn = fcn; + m_curr_fcn = fcn; } // We don't forward more than once, so no need to forward the @@ -574,21 +575,25 @@ octave_value dump (void) const; + std::string name (void) const { return m_name; } + + void rename (const std::string& new_name) { m_name = new_name; } + + private: + symbol_scope *m_decl_scope; - octave_user_function *curr_fcn; + octave_user_function *m_curr_fcn; - std::string name; + std::string m_name; std::weak_ptr<symbol_record_rep> m_fwd_rep; - std::deque<octave_value> value_stack; - - unsigned int storage_class; + std::deque<octave_value> m_value_stack; - // fcn_info *finfo; + unsigned int m_storage_class; - bool valid; + bool m_valid; private: @@ -608,7 +613,7 @@ symbol_record (symbol_scope *s, const std::string& nm = "", const octave_value& v = octave_value (), unsigned int sc = local) - : rep (new symbol_record_rep (s, nm, v, sc)) { } + : m_rep (new symbol_record_rep (s, nm, v, sc)) { } symbol_record (const symbol_record& sr) = default; @@ -618,19 +623,19 @@ symbol_record dup (symbol_scope *sid) const { - return symbol_record (rep->dup (sid)); + return symbol_record (m_rep->dup (sid)); } - const std::string& name (void) const { return rep->name; } + std::string name (void) const { return m_rep->name (); } - void rename (const std::string& new_name) { rep->name = new_name; } + void rename (const std::string& new_name) { m_rep->rename (new_name); } octave_value find (const octave_value_list& args = octave_value_list ()) const; void assign (const octave_value& value) { - rep->assign (value); + m_rep->assign (value); } void assign (octave_value::assign_op op, @@ -638,125 +643,124 @@ const std::list<octave_value_list>& idx, const octave_value& value) { - rep->assign (op, type, idx, value); + m_rep->assign (op, type, idx, value); } void assign (octave_value::assign_op op, const octave_value& value) { - rep->assign (op, value); + m_rep->assign (op, value); } void do_non_const_unary_op (octave_value::unary_op op) { - rep->do_non_const_unary_op (op); + m_rep->do_non_const_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) { - rep->do_non_const_unary_op (op, type, idx); + m_rep->do_non_const_unary_op (op, type, idx); } // Delete when deprecated varref functions are removed. octave_value& varref (void) { - return rep->varref (); + return m_rep->varref (); } octave_value varval (void) const { - return rep->varval (); + return m_rep->varval (); } - void push_context (symbol_scope *sid) { rep->push_context (sid); } + void push_context (symbol_scope *sid) { m_rep->push_context (sid); } - size_t pop_context (symbol_scope *sid) { return rep->pop_context (sid); } + size_t pop_context (symbol_scope *sid) { return m_rep->pop_context (sid); } - void clear (void) { rep->clear (); } + void clear (void) { m_rep->clear (); } - void clear (symbol_scope *sid) { rep->clear (sid); } + void clear (symbol_scope *sid) { m_rep->clear (sid); } bool is_defined (void) const { - return rep->is_defined (); + return m_rep->is_defined (); } bool is_undefined (void) const { - return ! rep->is_defined (); + return ! m_rep->is_defined (); } bool is_valid (void) const { - return rep->is_valid (); + return m_rep->is_valid (); } bool is_variable (void) const { - return rep->is_variable (); + return m_rep->is_variable (); } - bool is_local (void) const { return rep->is_local (); } - bool is_automatic (void) const { return rep->is_automatic (); } - bool is_formal (void) const { return rep->is_formal (); } - bool is_global (void) const { return rep->is_global (); } - bool is_hidden (void) const { return rep->is_hidden (); } - bool is_inherited (void) const { return rep->is_inherited (); } - bool is_persistent (void) const { return rep->is_persistent (); } - bool is_added_static (void) const { return rep->is_added_static (); } + bool is_local (void) const { return m_rep->is_local (); } + bool is_automatic (void) const { return m_rep->is_automatic (); } + bool is_formal (void) const { return m_rep->is_formal (); } + bool is_global (void) const { return m_rep->is_global (); } + bool is_hidden (void) const { return m_rep->is_hidden (); } + bool is_inherited (void) const { return m_rep->is_inherited (); } + bool is_persistent (void) const { return m_rep->is_persistent (); } + bool is_added_static (void) const { return m_rep->is_added_static (); } - void mark_local (void) { rep->mark_local (); } - void mark_automatic (void) { rep->mark_automatic (); } - void mark_formal (void) { rep->mark_formal (); } - void mark_hidden (void) { rep->mark_hidden (); } - void mark_inherited (void) { rep->mark_inherited (); } - void mark_global (void) { rep->mark_global (); } - void mark_persistent (void) { rep->mark_persistent (); } - void mark_added_static (void) { rep->mark_added_static (); } + void mark_local (void) { m_rep->mark_local (); } + void mark_automatic (void) { m_rep->mark_automatic (); } + void mark_formal (void) { m_rep->mark_formal (); } + void mark_hidden (void) { m_rep->mark_hidden (); } + void mark_inherited (void) { m_rep->mark_inherited (); } + void mark_global (void) { m_rep->mark_global (); } + void mark_persistent (void) { m_rep->mark_persistent (); } + void mark_added_static (void) { m_rep->mark_added_static (); } - void unmark_local (void) { rep->unmark_local (); } - void unmark_automatic (void) { rep->unmark_automatic (); } - void unmark_formal (void) { rep->unmark_formal (); } - void unmark_hidden (void) { rep->unmark_hidden (); } - void unmark_inherited (void) { rep->unmark_inherited (); } - void unmark_global (void) { rep->unmark_global (); } - void unmark_persistent (void) { rep->unmark_persistent (); } - void unmark_added_static (void) { rep->unmark_added_static (); } + void unmark_local (void) { m_rep->unmark_local (); } + void unmark_automatic (void) { m_rep->unmark_automatic (); } + void unmark_formal (void) { m_rep->unmark_formal (); } + void unmark_hidden (void) { m_rep->unmark_hidden (); } + void unmark_inherited (void) { m_rep->unmark_inherited (); } + void unmark_global (void) { m_rep->unmark_global (); } + void unmark_persistent (void) { m_rep->unmark_persistent (); } + void unmark_added_static (void) { m_rep->unmark_added_static (); } - void init_persistent (void) { rep->init_persistent (); } + void init_persistent (void) { m_rep->init_persistent (); } - void erase_persistent (void) { rep->erase_persistent (); } + void erase_persistent (void) { m_rep->erase_persistent (); } - void invalidate (void) { rep->invalidate (); } + void invalidate (void) { m_rep->invalidate (); } - symbol_scope *decl_scope (void) { return rep->decl_scope (); } + symbol_scope *decl_scope (void) { return m_rep->decl_scope (); } - unsigned int xstorage_class (void) const { return rep->storage_class; } + unsigned int storage_class (void) const { return m_rep->storage_class (); } void set_curr_fcn (octave_user_function *fcn) { - rep->set_curr_fcn (fcn); + m_rep->set_curr_fcn (fcn); } void bind_fwd_rep (const symbol_record& sr) { - rep->bind_fwd_rep (sr.rep); + m_rep->bind_fwd_rep (sr.m_rep); } - void unbind_fwd_rep (void) { rep->unbind_fwd_rep (); } + void unbind_fwd_rep (void) { m_rep->unbind_fwd_rep (); } - octave_value dump (void) const { return rep->dump (); } - - // const symbol_record_rep *xrep (void) const { return rep; } + octave_value dump (void) const { return m_rep->dump (); } private: static octave_value dummy_octave_value; - std::shared_ptr<symbol_record_rep> rep; + std::shared_ptr<symbol_record_rep> m_rep; - symbol_record (symbol_record_rep *new_rep) : rep (new_rep) { } + // NEW_REP must be dynamically allocated or nullptr. + symbol_record (symbol_record_rep *new_rep) : m_rep (new_rep) { } }; }
--- a/libinterp/corefcn/symscope.h Fri Nov 17 09:12:11 2017 -0500 +++ b/libinterp/corefcn/symscope.h Fri Nov 17 11:36:55 2017 -0500 @@ -403,7 +403,7 @@ const symbol_record& sr = nm_sr.second; if ((defined_only && ! sr.is_defined ()) - || (sr.xstorage_class () & exclude)) + || (sr.storage_class () & exclude)) continue; retval.push_back (sr);