public PEAPI.Field ResolveField(string name, string type_name) { FieldDef fielddef = (FieldDef)global_field_table[new DictionaryEntry(name, type_name)]; if (fielddef == null) { Report.Error(String.Format("Unable to resolve global field : {0} {1}", type_name, name)); } return(fielddef.Resolve(this)); }
public PEAPI.Field ResolveField(string name, BaseTypeRef ret_type, CodeGen code_gen) { FieldDef fielddef = (FieldDef)field_table[new DictionaryEntry(name, ret_type.FullName)]; if (fielddef != null) { return(fielddef.Resolve(code_gen, classdef)); } ExternTypeRef type_ref = code_gen.ThisModule.GetTypeRef(FullName, false); IFieldRef fieldref = type_ref.GetFieldRef(ret_type, name); fieldref.Resolve(code_gen); return(fieldref.PeapiField); }