本文整理汇总了C#中DotNetXri.Syntax.Xri3.Impl.Parser.Parser.traceOn方法的典型用法代码示例。如果您正苦于以下问题:C# Parser.traceOn方法的具体用法?C# Parser.traceOn怎么用?C# Parser.traceOn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DotNetXri.Syntax.Xri3.Impl.Parser.Parser
的用法示例。
在下文中一共展示了Parser.traceOn方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
public static void Main(string[] args)
{
Properties arguments = new Properties();
string error = "";
bool ok = args.Length > 0;
if (ok)
{
arguments.setProperty("Trace", "Off");
arguments.setProperty("Rule", "xri");
for (int i = 0; i < args.Length; i++)
{
if (args[i].Equals("-trace"))
arguments.setProperty("Trace", "On");
else if (args[i].Equals("-visitor"))
arguments.setProperty("Visitor", args[++i]);
else if (args[i].Equals("-file"))
arguments.setProperty("File", args[++i]);
else if (args[i].Equals("-string"))
arguments.setProperty("String", args[++i]);
else if (args[i].Equals("-rule"))
arguments.setProperty("Rule", args[++i]);
else
{
error = "unknown argument: " + args[i];
ok = false;
}
}
}
if (arguments.getProperty("File") == null &&
arguments.getProperty("String") == null)
{
error = "insufficient arguments";
ok = false;
}
if (!ok)
{
Logger.Info("error: " + error);
Logger.Info("usage: Parser [-rule rulename] [-trace] <-file file | -string string> [-visitor visitor]");
}
else
{
try
{
Parser parser = new Parser();
Rule rule = null;
parser.traceOff();
if (arguments.getProperty("Trace").Equals("On"))
parser.traceOn();
if (arguments.getProperty("File") != null)
rule = parser.parse(arguments.getProperty("Rule"), File.OpenRead(arguments.getProperty("File")));
else if (arguments.getProperty("String") != null)
rule = parser.parse(arguments.getProperty("Rule"), arguments.getProperty("String"));
if (arguments.getProperty("Visitor") != null)
{
Visitor visitor =
(Visitor)Activator.CreateInstance(Type.GetType(arguments.getProperty("Visitor")));
visitor.visit(rule);
}
}
catch (ArgumentException e)
{
Logger.Info("argument error: " + e.Message);
}
catch (IOException e)
{
Logger.Info("io error: " + e.Message);
}
catch (ParserException e)
{
Logger.Info("parser error: " + e.Message);
}
catch (TypeLoadException e)
{
Logger.Info("visitor error: class not found - " + e.Message);
}
catch (MethodAccessException e)
{
Logger.Info("visitor error: illegal access - " + e.Message);
}
catch (TargetInvocationException e)
{
Logger.Info("visitor error: instantiation failure - " + e.Message);
}
}
}