#include "pt-id.h"
Public Member Functions | |
tree_identifier (const symbol_record &s, int l=-1, int c=-1) | |
tree_identifier (int l=-1, int c=-1) | |
~tree_identifier ()=default | |
void | accept (tree_walker &tw) |
tree_identifier * | dup (symbol_scope &scope) const |
void | eval_undefined_error () |
octave_value | evaluate (tree_evaluator &tw, int nargout=1) |
octave_value_list | evaluate_n (tree_evaluator &tw, int nargout=1) |
virtual bool | is_black_hole () const |
bool | is_identifier () const |
octave_lvalue | lvalue (tree_evaluator &tw) |
bool | lvalue_ok () const |
void | mark_as_formal_parameter () |
std::string | name () const |
void | static_workspace_error () |
symbol_record | symbol () const |
Public Member Functions inherited from tree_expression | |
tree_expression (int l=-1, int c=-1) | |
virtual | ~tree_expression ()=default |
virtual void | copy_base (const tree_expression &e) |
virtual bool | is_assignment_expression () const |
virtual bool | is_binary_expression () const |
virtual bool | is_boolean_expression () const |
virtual bool | is_colon_expression () const |
virtual bool | is_constant () const |
bool | is_for_cmd_expr () const |
virtual bool | is_index_expression () const |
virtual bool | is_matrix () const |
bool | is_postfix_indexed () const |
virtual bool | is_prefix_expression () const |
virtual bool | is_unary_expression () const |
virtual bool | iscell () const |
void | mark_as_for_cmd_expr () |
tree_expression * | mark_in_parens () |
virtual std::string | oper () const |
virtual std::string | original_text () const |
int | paren_count () const |
char | postfix_index () const |
bool | print_result () const |
virtual bool | rvalue_ok () const |
tree_expression * | set_postfix_index (char type) |
tree_expression * | set_print_flag (bool print) |
Public Member Functions inherited from tree | |
tree (int l=-1, int c=-1) | |
virtual | ~tree ()=default |
const std::string | bp_cond () const |
virtual int | column () const |
void | column (int c) |
virtual void | delete_breakpoint () |
bool | is_active_breakpoint (tree_evaluator &tw) const |
bool | is_breakpoint () const |
virtual int | line () const |
void | line (int l) |
bool | meets_bp_condition (tree_evaluator &tw) const |
virtual void | set_breakpoint (const std::string &condition) |
void | set_location (int l, int c) |
std::string | str_print_code () |
Protected Attributes | |
symbol_record | m_sym |
Protected Attributes inherited from tree_expression | |
bool | m_for_cmd_expr |
int | m_num_parens |
char | m_postfix_index_type |
bool | m_print_flag |
Friends | |
class | tree_index_expression |
|
inline |
|
inline |
|
default |
|
inlinevirtual |
Implements tree.
Definition at line 101 of file pt-id.h.
References tree_walker::visit_identifier().
Referenced by tree_walker::visit_arg_validation(), tree_walker::visit_args_block_attribute_list(), tree_walker::visit_classdef(), tree_walker::visit_classdef_attribute(), tree_print_code::visit_decl_elt(), tree_walker::visit_decl_elt(), tree_print_code::visit_try_catch_command(), and tree_walker::visit_try_catch_command().
|
virtual |
Implements tree_expression.
Reimplemented in tree_black_hole.
Definition at line 77 of file pt-id.cc.
References tree_identifier(), tree::column(), tree_expression::copy_base(), symbol_scope::find_symbol(), and name().
Referenced by tree_decl_elt::dup().
void tree_identifier::eval_undefined_error | ( | ) |
Definition at line 44 of file pt-id.cc.
References tree::column(), error_with_id(), tree::line(), maybe_missing_function_hook(), and name().
Referenced by evaluate_n().
|
inlinevirtual |
Implements tree_expression.
Definition at line 92 of file pt-id.h.
References evaluate_n(), octave_value_list::length(), and octave_value().
Referenced by tree_evaluator::evaluate().
|
virtual |
Implements tree_expression.
Definition at line 93 of file pt-id.cc.
References octave_function::accepts_postfix_index(), octave_function::call(), eval_undefined_error(), interpreter::feval(), symbol_table::find_function(), octave_value::function_value(), tree_evaluator::get_interpreter(), interpreter::get_symbol_table(), symbol_record::is_added_static(), octave_value::is_defined(), octave_value::is_function(), tree_expression::is_postfix_indexed(), octave_value::is_undefined(), m_sym, symbol_record::name(), name(), ovl(), tree_expression::postfix_index(), tree_expression::print_result(), octave_value_list::stash_name_tags(), tree_evaluator::statement_printing_enabled(), static_workspace_error(), and tree_evaluator::varval().
Referenced by evaluate().
|
inlinevirtual |
Reimplemented in tree_black_hole.
Definition at line 71 of file pt-id.h.
Referenced by tree_evaluator::is_variable(), and base_parser::validate_param_list().
|
inlinevirtual |
Reimplemented from tree_expression.
|
virtual |
Reimplemented from tree_expression.
Reimplemented in tree_black_hole.
Definition at line 68 of file pt-id.cc.
References tree_evaluator::get_current_stack_frame(), symbol_record::is_added_static(), m_sym, and static_workspace_error().
Referenced by tree_decl_elt::lvalue(), and tree_evaluator::visit_try_catch_command().
|
inlinevirtual |
Reimplemented from tree_expression.
Definition at line 78 of file pt-id.h.
Referenced by tree_decl_elt::lvalue_ok(), and tree_checker::visit_try_catch_command().
|
inline |
Definition at line 73 of file pt-id.h.
References m_sym, and symbol_record::mark_formal().
Referenced by tree_decl_elt::mark_as_formal_parameter().
|
inlinevirtual |
Reimplemented from tree_expression.
Reimplemented in tree_black_hole.
Definition at line 69 of file pt-id.h.
References m_sym, and symbol_record::name().
Referenced by dup(), eval_undefined_error(), evaluate_n(), base_parser::make_fcn_name(), cdef_class::make_meta_class(), tree_decl_elt::name(), static_workspace_error(), base_parser::validate_param_list(), and tree_argument_list::variable_names().
|
inline |
|
inline |
Definition at line 106 of file pt-id.h.
References m_sym.
Referenced by tree_evaluator::is_defined(), tree_evaluator::is_variable(), and tree_evaluator::visit_decl_elt().
|
friend |
|
protected |
Definition at line 111 of file pt-id.h.
Referenced by evaluate_n(), lvalue(), tree_black_hole::lvalue(), mark_as_formal_parameter(), name(), and symbol().