Mercurial > hg > octave-nkf
comparison src/symtab.h @ 11445:40f311a69417
fix OO field access in subfunctions of private functions
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 05 Jan 2011 16:17:35 -0500 |
parents | 1783b360976f |
children | fd0a3ac60b0e |
comparison
equal
deleted
inserted
replaced
11444:08f8b0d96091 | 11445:40f311a69417 |
---|---|
592 | 592 |
593 if (p != subfunctions.end ()) | 593 if (p != subfunctions.end ()) |
594 subfunctions.erase (p); | 594 subfunctions.erase (p); |
595 } | 595 } |
596 | 596 |
597 void mark_subfunction_in_scope_as_private (scope_id scope, | |
598 const std::string& class_name); | |
599 | |
597 void install_cmdline_function (const octave_value& f) | 600 void install_cmdline_function (const octave_value& f) |
598 { | 601 { |
599 cmdline_function = f; | 602 cmdline_function = f; |
600 } | 603 } |
601 | 604 |
822 void erase_subfunction (scope_id scope) | 825 void erase_subfunction (scope_id scope) |
823 { | 826 { |
824 rep->erase_subfunction (scope); | 827 rep->erase_subfunction (scope); |
825 } | 828 } |
826 | 829 |
830 void mark_subfunction_in_scope_as_private (scope_id scope, | |
831 const std::string& class_name) | |
832 { | |
833 rep->mark_subfunction_in_scope_as_private (scope, class_name); | |
834 } | |
835 | |
827 void install_cmdline_function (const octave_value& f) | 836 void install_cmdline_function (const octave_value& f) |
828 { | 837 { |
829 rep->install_cmdline_function (f); | 838 rep->install_cmdline_function (f); |
830 } | 839 } |
831 | 840 |
962 static void erase_subfunctions_in_scope (scope_id scope) | 971 static void erase_subfunctions_in_scope (scope_id scope) |
963 { | 972 { |
964 for (fcn_table_iterator q = fcn_table.begin (); | 973 for (fcn_table_iterator q = fcn_table.begin (); |
965 q != fcn_table.end (); q++) | 974 q != fcn_table.end (); q++) |
966 q->second.erase_subfunction (scope); | 975 q->second.erase_subfunction (scope); |
976 } | |
977 | |
978 static void | |
979 mark_subfunctions_in_scope_as_private (scope_id scope, | |
980 const std::string& class_name) | |
981 { | |
982 for (fcn_table_iterator q = fcn_table.begin (); | |
983 q != fcn_table.end (); q++) | |
984 q->second.mark_subfunction_in_scope_as_private (scope, class_name); | |
967 } | 985 } |
968 | 986 |
969 static scope_id dup_scope (scope_id scope) | 987 static scope_id dup_scope (scope_id scope) |
970 { | 988 { |
971 scope_id retval = -1; | 989 scope_id retval = -1; |