tu_string as_3_function::get_multiname ( int index, vm_stack &stack ) const { multiname::kind kind = ( multiname::kind ) m_abc->get_multiname_type ( index ); switch ( kind ) { case multiname::CONSTANT_MultinameL : assert ( stack.top ( 0 ).is_string() || stack.top ( 0 ).is_number() ); return stack.pop().to_string(); break; case multiname::CONSTANT_Multiname: case multiname::CONSTANT_QName: return m_abc->get_multiname ( index ); default: assert ( !"todo" ); return ""; } }
inline static size_t call(vm_stack &stk, size_t else_offset) { dt::boolean cond; stk.pop(cond); return cond ? 1 : else_offset; }