public AbcNamespaceSet DefineNamespaceSet(params AbcNamespace[] list) { string key = AbcNamespaceSet.KeyOf(list); var nss = NamespaceSets[key]; if (nss != null) { return(nss); } nss = new AbcNamespaceSet(list, key); NamespaceSets.Add(nss); return(nss); }
public AbcMultiname DefineMultiname(AbcConstKind kind, AbcNamespaceSet nss) { string key = AbcMultiname.KeyOf(kind, nss); var mn = Multinames[key]; if (mn != null) { return(mn); } mn = new AbcMultiname(kind, nss) { Key = key }; Multinames.Add(mn); return(mn); }
public AbcMultiname(AbcConstKind kind, AbcNamespaceSet nss) { Kind = kind; NamespaceSet = nss; }
public AbcMultiname(AbcConstKind kind, AbcNamespaceSet nss, AbcConst <string> name) { Kind = kind; NamespaceSet = nss; Name = name; }
public static string KeyOf(AbcConstKind kind, AbcNamespaceSet nss) { return(nss.Key + (int)kind); }
public static string KeyOf(AbcConstKind kind, AbcNamespaceSet nss, AbcConst <string> name) { return("{" + nss.Key + "}." + name.Value + (int)kind); }
/// <summary> /// Imports <see cref="AbcNamespaceSet"/> constant. /// </summary> /// <param name="set">constant to import.</param> /// <returns></returns> public AbcNamespaceSet ImportConst(AbcNamespaceSet set) { return(NamespaceSets.Import(set)); }
public AbcMultiname DefineMultiname(AbcConstKind kind, AbcNamespaceSet nss, string name) { var c = DefineString(name); return(DefineMultiname(kind, nss, c)); }