Пример #1
0
        public static CTFNTypeSpecifier Get(CTFScope scope, string name)
        {
            CTFSymbol s = scope.FindTypeSymbol(name);

            if (s == null)
            {
                return(null);
            }

            return(new CTFNTypeSpecifier(name, s.CtfType));
        }
Пример #2
0
        protected static CTFType GetType(CTFScope scope, List <CTFTypeSpecifier> cds)
        {
            // cases:
            // standard combinatons "unsigned long" - really as a special identifier
            // some kind of struct/variant/enum
            // integer/floating_point
            // string
            if (cds.Count == 1) // standard case
            {
                return(cds[0].GetType(scope));
            }
            // Non trivial situation, something like "unsigned long"
            string name = FullName(cds);

            return(scope.FindTypeSymbol(name).CtfType);
        }