private CTFSymbol FindSymbol(string name) { CTFSymbol result = null; symbols.TryGetValue(name, out result); return(result); }
public static CTFNTypeSpecifier Get(CTFScope scope, string name) { CTFSymbol s = scope.FindTypeSymbol(name); if (s == null) { return(null); } return(new CTFNTypeSpecifier(name, s.CtfType)); }
internal static void AddType(CTFScope scope, List <CTFTypeSpecifier> cds, List <CTFTypeSpecifier> cds2, CTFDeclarator cd) { // used by typealias CTFType ct = GetType(scope, cds); if (cds2 != null) { // Special case (unsigned long and so on) string name = FullName(cds2); CTFSymbol cs = new CTFSymbol(name, ct); scope.AddType(cs); } if (cd != null) { CTFSymbol cs = new CTFSymbol(cd.Name, ct); scope.AddType(cs); } }
internal void AddStruct(CTFSymbol symbol) { symbols.Add(structPrefix + symbol.Name, symbol); }
internal void AddType(CTFSymbol symbol) { symbols.Add(typePrefix + symbol.Name, symbol); }