示例#1
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="project">PSharpProject</param>
 /// <param name="tree">SyntaxTree</param>
 /// <param name="exitAtError">Exits at error</param>
 internal BaseParser(PSharpProject project, SyntaxTree tree, bool exitAtError)
 {
     this.Project             = project;
     this.SyntaxTree          = tree;
     this.ParsingErrorLog     = "";
     this.IsRunningInternally = exitAtError;
 }
示例#2
0
        /// <summary>
        /// Runs the P# parsing engine.
        /// </summary>
        public static void Run()
        {
            ParsingEngine.Projects = new List<PSharpProject>();

            // Parse the projects.
            foreach (var programUnit in ProgramInfo.ProgramUnits)
            {
                var project = new PSharpProject(programUnit.GetProject());
                project.Parse();
                ParsingEngine.Projects.Add(project);
            }

            // Rewrite the projects.
            foreach (var project in ParsingEngine.Projects)
            {
                project.Rewrite();
            }
        }
示例#3
0
        /// <summary>
        /// Runs the P# parsing engine.
        /// </summary>
        public static void Run()
        {
            ParsingEngine.Projects = new List <PSharpProject>();

            // Parse the projects.
            foreach (var programUnit in ProgramInfo.ProgramUnits)
            {
                var project = new PSharpProject(programUnit.GetProject());
                project.Parse();
                ParsingEngine.Projects.Add(project);
            }

            // Rewrite the projects.
            foreach (var project in ParsingEngine.Projects)
            {
                project.Rewrite();
            }
        }
示例#4
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="project">PSharpProject</param>
 protected PSharpRewriter(PSharpProject project)
 {
     this.Project = project;
 }
示例#5
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="project">PSharpProject</param>
 /// <param name="tree">SyntaxTree</param>
 /// <param name="exitAtError">Exits at error</param>
 internal BaseParser(PSharpProject project, SyntaxTree tree, bool exitAtError)
 {
     this.Project = project;
     this.SyntaxTree = tree;
     this.ParsingErrorLog = "";
     this.IsRunningInternally = exitAtError;
 }
示例#6
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="project">PSharpProject</param>
 protected PSharpRewriter(PSharpProject project)
 {
     this.Project = project;
 }
示例#7
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="project">PSharpProject</param>
 /// <param name="tree">SyntaxTree</param>
 /// <param name="exitAtError">Exits at error</param>
 internal PParser(PSharpProject project, SyntaxTree tree, bool exitAtError = true)
     : base(project, tree, exitAtError)
 {
 }
示例#8
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="project">PSharpProject</param>
 /// <param name="tree">SyntaxTree</param>
 /// <param name="exitAtError">Exits at error</param>
 internal PParser(PSharpProject project, SyntaxTree tree, bool exitAtError = true)
     : base(project, tree, exitAtError)
 {
 }