mirror of
https://github.com/Ryujinx/GtkSharp.git
synced 2024-12-25 17:55:35 +00:00
b6114fef1e
* generator/CallbackGen.cs : use non-static symtab, kill doc comments * generator/ClassBase.cs : use non-static symtab * generator/CodeGenerator.cs : use non-static symtab * generator/EnumGen.cs : kill doc comments, don't gen using System here * generator/GenBase.cs : gen using System here for all types * generator/InterfaceGen.cs : don't gen using System here. * generator/Method.cs : use non-static symtab * generator/ObjectGen.cs : kill doc comments, use non-static symtab * generator/OpaqueGen.cs : don't gen using System here. * generator/Parameters.cs : use non static symtab. * generator/Parser.cs : use non static symtab. add SimpleGen's and ManualGen's * generator/Property.cs : use non static symtab * generator/SignalHandler.cs : use non static symtab * generator/StructBase.cs : use non static symtab * generator/SymbolTable.cs : major refactoring. now uses SimpleGen and ManualGen IGeneratables to simplify the method and prop code. Is now instance based with a static prop to get the singleton instance, so that a this indexer can be provided to access the IGeneratables nicely. Gearing up to remove even more code from here by accessing IGeneratables directly. svn path=/trunk/gtk-sharp/; revision=14687
48 lines
952 B
C#
48 lines
952 B
C#
// GtkSharp.Generation.CodeGenerator.cs - The main code generation engine.
|
|
//
|
|
// Author: Mike Kestner <mkestner@speakeasy.net>
|
|
//
|
|
// (c) 2001 Mike Kestner
|
|
|
|
namespace GtkSharp.Generation {
|
|
|
|
using System;
|
|
using System.Collections;
|
|
using System.Xml;
|
|
|
|
public class CodeGenerator {
|
|
|
|
public static int Main (string[] args)
|
|
{
|
|
if (args.Length < 2) {
|
|
Console.WriteLine ("Usage: codegen --generate <filename1...>");
|
|
return 0;
|
|
}
|
|
|
|
bool generate = false;
|
|
foreach (string arg in args) {
|
|
if (arg == "--generate") {
|
|
generate = true;
|
|
continue;
|
|
} else if (arg == "--include") {
|
|
generate = false;
|
|
continue;
|
|
}
|
|
|
|
Parser p = new Parser (arg);
|
|
p.Parse (generate);
|
|
}
|
|
|
|
foreach (IGeneratable gen in SymbolTable.Table.Generatables) {
|
|
gen.Generate ();
|
|
}
|
|
|
|
ObjectGen.GenerateMapper ();
|
|
|
|
Statistics.Report();
|
|
return 0;
|
|
}
|
|
|
|
}
|
|
}
|