public RuntimeIshtarClass FindType(RuntimeToken type, bool findExternally = false) { var result = class_table.OfExactType <RuntimeIshtarClass>().FirstOrDefault(filter); if (result is not null) { return(result); } bool filter(RuntimeIshtarClass x) => x !.runtime_token.Equals(type); if (!findExternally) { return(null); } foreach (var module in Deps.OfExactType <RuntimeIshtarModule>()) { result = module.FindType(type, true); if (result is not null) { return(result); } } return(null); }
internal RuntimeIshtarClass(QualityTypeName name, VeinClass[] parents, RuntimeIshtarModule module) : base(name, parents, module) { if (module is null) { return; } ID = module.Vault.TokenGranted.GrantClassID(); runtime_token = new RuntimeToken(module.ID, ID); }