public CodeGen (string output_file, bool is_dll, bool debugging_info) { this.output_file = output_file; this.is_dll = is_dll; if (debugging_info) symwriter = new SymbolWriter (output_file); type_manager = new TypeManager (this); extern_table = new ExternTable (); typedef_stack = new ArrayList (); typedef_stack_top = 0; global_field_table = new Hashtable (); global_method_table = new Hashtable (); data_table = new Hashtable (); defcont_list = new ArrayList (); sub_system = -1; cor_flags = -1; image_base = -1; stack_reserve = -1; entry_point = false; this_module = null; }
private Type[] CreateTypeList (TypeManager type_manager) { if (param_list == null) return new Type[0]; int count = param_list.Count; Type[] type_list = new Type[count]; for (int i=0; i<count; i++) { type_list[i] = type_manager[(string) param_list[i]]; } return type_list; }