public static RTTIRefObject GetTypeById(this HzdCore core, BaseGGUUID id)
        {
            foreach (var obj in core.Binary)
            {
                if (obj is RTTIRefObject refObj && refObj.ObjectUUID.Equals(id))
                {
                    return(refObj);
                }
            }

            return(null);
        }
 public HzdCore LoadFile(string path, string file, bool throwError = false)
 {
     using var fs = LoadFileStream(path, file, throwError);
     return(fs == null ? null : HzdCore.FromStream(fs, file));
 }
 public HzdCore LoadFileFromDir(string dir, HashSet <string> fileFilter, string file)
 {
     using var fs = LoadFileStreamFromDir(dir, fileFilter, file);
     return(fs == null ? null : HzdCore.FromStream(fs, file));
 }
 public static HzdCore FromFile(string path, string source)
 {
     using var fs = File.OpenRead(path);
     return(HzdCore.FromStream(fs, source));
 }
 public static T GetType <T>(this HzdCore core)
 {
     return(GetTypes <T>(core).FirstOrDefault());
 }
 public static List <T> GetTypes <T>(this HzdCore core)
 {
     return(core.Binary.Where(x => x is T).Cast <T>().ToList());
 }
 public static Dictionary <BaseGGUUID, T> GetTypesById <T>(
     this HzdCore core) where T : RTTIRefObject
 {
     return(core.Binary.Where(x => x is T)
            .ToDictionary(x => (BaseGGUUID)((T)x).ObjectUUID, x => (T)x));
 }
 public static Dictionary <BaseGGUUID, RTTIRefObject> GetTypesById(this HzdCore core)
 => GetTypesById <RTTIRefObject>(core);