MethodIterator Class Reference

#include <methodIterator.hpp>

Inheritance diagram for MethodIterator:

Inheritance graph
[legend]
Collaboration diagram for MethodIterator:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 MethodIterator (methodOop m, MethodClosure *blk, AbstractMethodIntervalFactory *f=&defaultFactory)
 MethodIterator (MethodInterval *interval, MethodClosure *blk, AbstractMethodIntervalFactory *f=&defaultFactory)
MethodIntervalinterval () const

Static Public Attributes

static AbstractMethodIntervalFactoryfactory

Private Member Functions

void dispatch (MethodClosure *blk)
void unknown_code (u_char code)
void should_never_encounter (u_char code)

Private Attributes

MethodInterval_interval

Static Private Attributes

static MethodIntervalFactory defaultFactory

Detailed Description

Definition at line 484 of file methodIterator.hpp.


Constructor & Destructor Documentation

MethodIterator::MethodIterator ( methodOop  m,
MethodClosure blk,
AbstractMethodIntervalFactory f = &defaultFactory 
)

Definition at line 1178 of file methodIterator.cpp.

References _interval, dispatch(), factory, and AbstractMethodIntervalFactory::new_MethodInterval().

Here is the call graph for this function:

MethodIterator::MethodIterator ( MethodInterval interval,
MethodClosure blk,
AbstractMethodIntervalFactory f = &defaultFactory 
)

Definition at line 1185 of file methodIterator.cpp.

References _interval, dispatch(), factory, and interval().

Here is the call graph for this function:


Member Function Documentation

void MethodIterator::dispatch ( MethodClosure blk  )  [private]

Definition at line 325 of file methodIterator.cpp.

References _interval, MethodClosure::aborting(), Bytecodes::access_send_0, Bytecodes::access_send_self, MethodClosure::allocate_closure(), MethodClosure::allocate_context(), Bytecodes::allocate_temp_1, Bytecodes::allocate_temp_2, Bytecodes::allocate_temp_3, Bytecodes::allocate_temp_n, MethodClosure::allocate_temporaries(), Bytecodes::and_byte, Bytecodes::and_word, as_smiOop(), assert, MethodInterval::begin_bci(), Bytecodes::compiled_send_0, Bytecodes::compiled_send_0_pop, Bytecodes::compiled_send_1, Bytecodes::compiled_send_1_pop, Bytecodes::compiled_send_2, Bytecodes::compiled_send_2_pop, Bytecodes::compiled_send_n, Bytecodes::compiled_send_n_pop, Bytecodes::compiled_send_self, Bytecodes::compiled_send_self_pop, Bytecodes::compiled_send_super, Bytecodes::compiled_send_super_pop, MethodClosure::cond_node(), context_as_scope, Bytecodes::copy_1_into_context, Bytecodes::copy_2_into_context, MethodClosure::copy_argument_into_context(), Bytecodes::copy_n_into_context, Bytecodes::copy_self_1_into_context, Bytecodes::copy_self_2_into_context, MethodClosure::copy_self_into_context(), Bytecodes::copy_self_into_context, Bytecodes::copy_self_n_into_context, Bytecodes::dll_call_async, MethodClosure::dll_call_node(), Bytecodes::dll_call_sync, MethodClosure::double_equal(), Bytecodes::double_equal, MethodClosure::double_not_equal(), Bytecodes::double_tilde, MethodInterval::end_bci(), factory, falseObj, MethodClosure::float_allocate(), Bytecodes::float_allocate, MethodClosure::float_at(), MethodClosure::float_binary(), Bytecodes::float_binary_op, Bytecodes::float_binary_op_to_oop, MethodClosure::float_binaryToOop(), MethodClosure::float_floatify(), Bytecodes::float_floatify_pop, MethodClosure::float_move(), Bytecodes::float_move, MethodClosure::float_nullary(), Bytecodes::float_nullary_op, MethodClosure::float_set(), Bytecodes::float_set, MethodClosure::float_unary(), Bytecodes::float_unary_op, Bytecodes::float_unary_op_to_oop, MethodClosure::float_unaryToOop(), Floats::floatify, Bytecodes::halt, primitive_desc::has_receiver(), MethodClosure::if_node(), Bytecodes::ifFalse_byte, Bytecodes::ifFalse_word, Bytecodes::ifTrue_byte, Bytecodes::ifTrue_word, MethodInterval::in_prim_failure_block(), MethodClosure::in_prim_failure_block(), Bytecodes::install_new_context_block_1, Bytecodes::install_new_context_block_2, Bytecodes::install_new_context_block_n, Bytecodes::install_new_context_method_0, Bytecodes::install_new_context_method_1, Bytecodes::install_new_context_method_2, Bytecodes::install_new_context_method_n, Bytecodes::interpreted_send_0, Bytecodes::interpreted_send_0_pop, Bytecodes::interpreted_send_1, Bytecodes::interpreted_send_1_pop, Bytecodes::interpreted_send_2, Bytecodes::interpreted_send_2_pop, Bytecodes::interpreted_send_n, Bytecodes::interpreted_send_n_pop, Bytecodes::interpreted_send_self, Bytecodes::interpreted_send_self_pop, Bytecodes::interpreted_send_super, Bytecodes::interpreted_send_super_pop, oopDesc::is_association(), oopDesc::is_smi(), oopDesc::is_symbol(), Bytecodes::jump_else_byte, Bytecodes::jump_else_word, Bytecodes::jump_loop_byte, Bytecodes::jump_loop_word, primitives::lookup(), map0to256(), Bytecodes::megamorphic_send_0, Bytecodes::megamorphic_send_0_pop, Bytecodes::megamorphic_send_1, Bytecodes::megamorphic_send_1_pop, Bytecodes::megamorphic_send_2, Bytecodes::megamorphic_send_2_pop, Bytecodes::megamorphic_send_n, Bytecodes::megamorphic_send_n_pop, Bytecodes::megamorphic_send_self, Bytecodes::megamorphic_send_self_pop, Bytecodes::megamorphic_send_super, Bytecodes::megamorphic_send_super_pop, MethodInterval::method(), MethodClosure::method_return(), AbstractMethodIntervalFactory::new_AndNode(), AbstractMethodIntervalFactory::new_DLLCallNode(), AbstractMethodIntervalFactory::new_IfNode(), AbstractMethodIntervalFactory::new_OrNode(), AbstractMethodIntervalFactory::new_PrimitiveCallNode(), AbstractMethodIntervalFactory::new_WhileNode(), nilObj, Bytecodes::non_local_return_self_pop_n, Bytecodes::non_local_return_tos_pop_n, MethodClosure::nonlocal_return(), MethodClosure::normal_send(), methodOopDesc::number_of_arguments(), Bytecodes::objArray_at, Bytecodes::objArray_at_put, Bytecodes::only_pop, oopSize, Bytecodes::or_byte, Bytecodes::or_word, Bytecodes::polymorphic_send_0, Bytecodes::polymorphic_send_0_pop, Bytecodes::polymorphic_send_1, Bytecodes::polymorphic_send_1_pop, Bytecodes::polymorphic_send_2, Bytecodes::polymorphic_send_2_pop, Bytecodes::polymorphic_send_n, Bytecodes::polymorphic_send_n_pop, Bytecodes::polymorphic_send_self, Bytecodes::polymorphic_send_self_pop, Bytecodes::polymorphic_send_super, Bytecodes::polymorphic_send_super_pop, MethodClosure::pop(), MethodClosure::predict_prim_call(), Bytecodes::predict_prim_call, Bytecodes::predict_prim_call_failure, Bytecodes::predict_prim_call_failure_lookup, Bytecodes::predict_prim_call_lookup, Bytecodes::prim_call, Bytecodes::prim_call_failure, Bytecodes::prim_call_failure_lookup, Bytecodes::prim_call_lookup, Bytecodes::prim_call_self, Bytecodes::prim_call_self_failure, Bytecodes::prim_call_self_failure_lookup, Bytecodes::prim_call_self_lookup, MethodClosure::primitive_call_node(), Bytecodes::primitive_send_0, Bytecodes::primitive_send_0_pop, Bytecodes::primitive_send_1, Bytecodes::primitive_send_1_pop, Bytecodes::primitive_send_2, Bytecodes::primitive_send_2_pop, Bytecodes::primitive_send_n, Bytecodes::primitive_send_n_pop, Bytecodes::primitive_send_self, Bytecodes::primitive_send_self_pop, Bytecodes::primitive_send_super, Bytecodes::primitive_send_super_pop, Bytecodes::push_arg_1, Bytecodes::push_arg_2, Bytecodes::push_arg_3, Bytecodes::push_arg_n, MethodClosure::push_argument(), MethodClosure::push_classVar(), Bytecodes::push_classVar, MethodClosure::push_classVar_name(), Bytecodes::push_classVar_name, Bytecodes::push_false, MethodClosure::push_global(), Bytecodes::push_global, Bytecodes::push_instVar, MethodClosure::push_instVar(), Bytecodes::push_instVar_name, MethodClosure::push_instVar_name(), Bytecodes::push_literal, MethodClosure::push_literal(), Bytecodes::push_neg_n, Bytecodes::push_new_closure_context_0, Bytecodes::push_new_closure_context_1, Bytecodes::push_new_closure_context_2, Bytecodes::push_new_closure_context_n, Bytecodes::push_new_closure_tos_0, Bytecodes::push_new_closure_tos_1, Bytecodes::push_new_closure_tos_2, Bytecodes::push_new_closure_tos_n, Bytecodes::push_nil, MethodClosure::push_self(), Bytecodes::push_self, Bytecodes::push_succ_n, Bytecodes::push_temp_0, Bytecodes::push_temp_0_context_0, Bytecodes::push_temp_0_context_1, Bytecodes::push_temp_0_context_n, Bytecodes::push_temp_1, Bytecodes::push_temp_1_context_0, Bytecodes::push_temp_1_context_1, Bytecodes::push_temp_1_context_n, Bytecodes::push_temp_2, Bytecodes::push_temp_2_context_0, Bytecodes::push_temp_2_context_1, Bytecodes::push_temp_2_context_n, Bytecodes::push_temp_3, Bytecodes::push_temp_4, Bytecodes::push_temp_5, Bytecodes::push_temp_n, Bytecodes::push_temp_n_context_0, Bytecodes::push_temp_n_context_1, Bytecodes::push_temp_n_context_n, MethodClosure::push_temporary(), MethodClosure::push_tos(), Bytecodes::push_tos, Bytecodes::push_true, Bytecodes::return_instVar, Bytecodes::return_instVar_name, Bytecodes::return_self_pop_0, Bytecodes::return_self_pop_1, Bytecodes::return_self_pop_2, Bytecodes::return_self_pop_n, Bytecodes::return_self_zap_pop_n, Bytecodes::return_tos_pop_0, Bytecodes::return_tos_pop_1, Bytecodes::return_tos_pop_2, Bytecodes::return_tos_pop_n, Bytecodes::return_tos_zap_pop_n, MethodClosure::self_send(), MethodClosure::set_bci(), MethodClosure::set_method(), MethodClosure::set_next_bci(), MethodClosure::set_prim_failure(), MethodClosure::set_self_via_context(), Bytecodes::set_self_via_context, should_never_encounter(), ShouldNotReachHere, Bytecodes::smi_add, Bytecodes::smi_and, Bytecodes::smi_create_point, Bytecodes::smi_div, Bytecodes::smi_equal, Bytecodes::smi_greater, Bytecodes::smi_greater_equal, Bytecodes::smi_less, Bytecodes::smi_less_equal, Bytecodes::smi_mod, Bytecodes::smi_mult, Bytecodes::smi_not_equal, Bytecodes::smi_or, Bytecodes::smi_shift, Bytecodes::smi_sub, Bytecodes::smi_xor, Bytecodes::special_primitive_send_1_hint, Bytecodes::store_classVar, MethodClosure::store_classVar(), Bytecodes::store_classVar_name, MethodClosure::store_classVar_name(), Bytecodes::store_classVar_pop, Bytecodes::store_classVar_pop_name, Bytecodes::store_global, MethodClosure::store_global(), Bytecodes::store_global_pop, Bytecodes::store_instVar, MethodClosure::store_instVar(), Bytecodes::store_instVar_name, MethodClosure::store_instVar_name(), Bytecodes::store_instVar_pop, Bytecodes::store_instVar_pop_name, Bytecodes::store_temp_0_context_0_pop, Bytecodes::store_temp_0_context_1_pop, Bytecodes::store_temp_0_context_n_pop, Bytecodes::store_temp_0_pop, Bytecodes::store_temp_1_context_0_pop, Bytecodes::store_temp_1_context_1_pop, Bytecodes::store_temp_1_context_n_pop, Bytecodes::store_temp_1_pop, Bytecodes::store_temp_2_context_0_pop, Bytecodes::store_temp_2_context_1_pop, Bytecodes::store_temp_2_context_n_pop, Bytecodes::store_temp_2_pop, Bytecodes::store_temp_3_pop, Bytecodes::store_temp_4_pop, Bytecodes::store_temp_5_pop, Bytecodes::store_temp_n, Bytecodes::store_temp_n_context_0_pop, Bytecodes::store_temp_n_context_1_pop, Bytecodes::store_temp_n_context_n_pop, Bytecodes::store_temp_n_pop, MethodClosure::store_temporary(), MethodClosure::super_send(), tos_as_scope, trueObj, Bytecodes::unimplemented_06, Bytecodes::unimplemented_20, Bytecodes::unimplemented_21, Bytecodes::unimplemented_22, Bytecodes::unimplemented_23, Bytecodes::unimplemented_24, Bytecodes::unimplemented_25, Bytecodes::unimplemented_26, Bytecodes::unimplemented_27, Bytecodes::unimplemented_39, Bytecodes::unimplemented_3a, Bytecodes::unimplemented_3b, Bytecodes::unimplemented_3c, Bytecodes::unimplemented_bc, Bytecodes::unimplemented_c7, Bytecodes::unimplemented_cc, Bytecodes::unimplemented_dc, Bytecodes::unimplemented_de, Bytecodes::unimplemented_df, Bytecodes::unimplemented_fa, Bytecodes::unimplemented_fb, Bytecodes::unimplemented_fc, Bytecodes::unimplemented_fd, Bytecodes::unimplemented_fe, unknown_code(), smiOopDesc::value(), MethodClosure::while_node(), Bytecodes::whileFalse_byte, Bytecodes::whileFalse_word, Bytecodes::whileTrue_byte, Bytecodes::whileTrue_word, and MethodClosure::zap_scope().

Referenced by MethodIterator().

Here is the call graph for this function:

MethodInterval* MethodIterator::interval (  )  const [inline]

Definition at line 496 of file methodIterator.hpp.

References _interval.

Referenced by MethodIterator().

void MethodIterator::should_never_encounter ( u_char  code  )  [private]

Definition at line 318 of file methodIterator.cpp.

References fatal, outputStream::print_cr(), and std.

Referenced by dispatch().

Here is the call graph for this function:

void MethodIterator::unknown_code ( u_char  code  )  [private]

Definition at line 313 of file methodIterator.cpp.

References fatal, outputStream::print_cr(), and std.

Referenced by dispatch().

Here is the call graph for this function:


Member Data Documentation

MethodInterval* MethodIterator::_interval [private]

Definition at line 489 of file methodIterator.hpp.

Referenced by dispatch(), interval(), and MethodIterator().

MethodIntervalFactory MethodIterator::defaultFactory [static, private]

Definition at line 490 of file methodIterator.hpp.

AbstractMethodIntervalFactory * MethodIterator::factory [static]

Definition at line 492 of file methodIterator.hpp.

Referenced by CondNode::CondNode(), dispatch(), ExternalCallNode::ExternalCallNode(), IfNode::IfNode(), MethodIterator(), and WhileNode::WhileNode().


The documentation for this class was generated from the following files:
Generated on Mon Oct 9 14:07:54 2006 for Strongtalk VM by  doxygen 1.4.7