Exemple #1
0
        private static int runYaml(Dictionary <String, String> switches, String[] args)
        {
            TextReader yamlInput;

            if (switches.hasAny("-i", "--inline"))
            {
                if (args.Length == 0)
                {
                    return(printUsage("missing inline YAML text", 3));
                }

                yamlInput = new StringReader(args[0]);
            }
            else
            {
                if (args.Length == 0)
                {
                    return(printUsage("missing YAML file", 2));
                }

                yamlInput = new StreamReader(new FileStream(args[0], FileMode.Open, FileAccess.Read));
            }

            // Sets arguments
            args = args.Skip(1).ToArray();
            ArgsInputOutput argsIo = new ArgsInputOutput(args);

            using (yamlInput)
            {
                YamlParser  parser    = new YamlParser();
                List <Pnyx> toExecute = parser.parseYaml(yamlInput, argsIo);
                foreach (Pnyx pnyx in toExecute)
                {
                    using (pnyx)
                        pnyx.process();
                }
            }

            return(0);
        }
Exemple #2
0
 public BlockYaml(YamlParser yamlParser, YamlSequenceNode block)
 {
     this.yamlParser = yamlParser;
     this.block      = block;
 }