public static ClassDefinition LoadClass(Raw.ClassDefinition raw, HashedDefinitionDictionary <ClassDefinition> root) { var def = GetClass(raw); LoadClass(def, raw, root); return(def); }
public static ClassDefinition LoadAnonymousClass(Raw.ClassDefinition raw, HashedDefinitionDictionary <ClassDefinition> root) { var def = new ClassDefinition(); LoadClass(def, raw, root); return(def); }
private static ClassDefinition GetClass(Raw.ClassDefinition raw) { return(new ClassDefinition() { Name = raw.Name, Hash = raw.Hash, }); }
private static void LoadClass(ClassDefinition def, Raw.ClassDefinition raw, HashedDefinitionDictionary <ClassDefinition> root) { def.Friends = new ReadOnlyCollection <FriendDefinition>(LoadFriends(raw.Friends, root)); def.Fields = new ReadOnlyCollection <FieldDefinition>(LoadFields(raw.Fields)); def.Objects = new ReadOnlyCollection <ClassDefinition>(LoadObjects(raw.Objects, root)); def.DynamicNestedClasses = raw.DynamicNestedClasses; def.ClassFieldName = raw.ClassFieldName; def.ClassFieldHash = raw.ClassFieldHash; }