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); }
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}>"; }
private NdArrayLevel1Generator(CsFile csFile, int dimension) { _dimension = dimension; _class = csFile.GetOrCreateClass("Lang.Python.Numpy", $"NdArray{dimension}D<T>"); _class.BaseClass = "NdArray<T>"; }