示例#1
0
        static void Main(string[] args)
        {
            string source      = File.ReadAllText("SimpleTest.cs");
            var    tree        = SyntaxFactory.ParseSyntaxTree(source);
            var    evmByteCode = new EthSharpCompiler(tree).CreateByteCode();

            Console.WriteLine(evmByteCode.ByteCode.ToHexString());
            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            Array.Reverse(args); // Stack reads in values backwards
            Stack <string> arguments = new Stack <string>(args);
            ArgSettings    settings  = new ArgSettings();

            while (arguments.Count != 0)
            {
                switch (arguments.Pop())
                {
                case "-i":     // Define input file
                case "--input":
                    settings.inputFile = arguments.Pop();
                    break;

                case "-o":     // Define output file. If null, just print output to console.
                case "--output":
                    settings.outputFile = arguments.Pop();
                    break;

                case "-h":     // Display help info
                case "--help":
                case "?":
                    DisplayHelpInfo();
                    break;
                }
            }

            string source;

            if (settings.inputFile != null)
            {
                source = File.ReadAllText(settings.inputFile);
                var tree        = SyntaxFactory.ParseSyntaxTree(source);
                var evmByteCode = new EthSharpCompiler(tree).CreateByteCode();
                if (settings.outputFile != null)
                {
                    File.WriteAllText(settings.outputFile, evmByteCode.ByteCode.ToHexString());
                }
                else
                {
                    Console.WriteLine(evmByteCode.ByteCode.ToHexString());
                }
                Console.ReadKey();
            }
            else
            {
                Console.WriteLine("No input file defined.");
                Environment.Exit(1);
            }
        }
示例#3
0
        static void Main(string[] args)
        {
            string source = @"public class SimpleStorage {
    private int storedData;

    public void Set(int x) {
        storedData = x;
    }

    public int Get(){
        return storedData;
    }
}";
            //parse tree - create assembly then emit.

            var tree     = SyntaxFactory.ParseSyntaxTree(source);
            var assembly = new EthSharpCompiler().Create(tree);

            Console.ReadKey();
        }