public static void Run(string basePath)
        {
            var gen = new KeysGenerator();
            var a   = typeof(KeysGeneratorRunner).Assembly;

            void AddString(string n, string p = "Value")
            {
                gen.Add(new KeysGeneratorDef(n, a, WrappedTypes.String, p));
            }

            AddString(nameof(XValueTypeName), nameof(XValueTypeName.ValueTypeName));
            AddString(nameof(XUnitTypeName), nameof(XUnitTypeName.TypeName));
            AddString(nameof(XUnitContainerTypeName), nameof(XUnitContainerTypeName.TypeName));

            var file = new CsFile();

            file.AddImportNamespace("System");
            IAutoCodeGeneratorContext ctx =
                new AutoCodeGenerator.SimpleAutoCodeGeneratorContext(file,
                                                                     type =>
            {
                var c       = file.GetOrCreateClass(type);
                c.IsPartial = true;
                return(c);
            });

            gen.AssemblyStart(a, ctx);
            gen.AssemblyEnd(a, ctx);

            var filename = Path.Combine(basePath, "Keys.auto.cs");

            file.SaveIfDifferent(filename);
        }
Пример #2
0
 private NdArrayLevel2Generator(CsFile csFile, int dimension, string wrappedType)
 {
     _dimension   = dimension;
     _wrappedType = wrappedType;
     _class       =
         csFile.GetOrCreateClass("Lang.Python.Numpy", $"NdArray{dimension}D{wrappedType.FirstUpper()}");
     _class.BaseClass = $"NdArray{dimension}D<{wrappedType}>";
 }
Пример #3
0
 private NdArrayLevel1Generator(CsFile csFile, int dimension)
 {
     _dimension       = dimension;
     _class           = csFile.GetOrCreateClass("Lang.Python.Numpy", $"NdArray{dimension}D<T>");
     _class.BaseClass = "NdArray<T>";
 }