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;
                }
Example #2
0
		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;
		}