예제 #1
0
 private void GetSimpleTypes(TypeStorage storage)
 {
     storage.AddType(Types.TypeInfo.Int);
     storage.AddType(Types.TypeInfo.Byte);
     storage.AddType(Types.TypeInfo.Char);
     storage.AddType(Types.TypeInfo.Double);
     storage.AddType(Types.TypeInfo.Bool);
     storage.AddType(Types.TypeInfo.Float);
     storage.AddType(Types.TypeInfo.String);
     storage.AddType(Types.TypeInfo.Void);
 }
예제 #2
0
        private void GetTypeInfo(System.Type stype)
        {
            if (stype.IsGenericType)
            {
                var template = new GenericTemplate(stype.Name, stype.GetGenericArguments().Length);

                storage.AddTemplate(template);
            }
            else
            {
                var type = stype.IsAbstract
                    ? new PackageType(stype.Name)
                    : new ClassType(stype.Name);

                storage.AddType(type);
            }

            nameConvertor.Register(stype.Assembly.GetName().Name, stype.Namespace, stype.Name, stype.Name);
        }