Skip to content

Commit

Permalink
Перенёс SyntaxVisitors в папку первого уровня
Browse files Browse the repository at this point in the history
  • Loading branch information
miks1965 committed Jul 18, 2016
1 parent e7b65c4 commit bd19c5e
Show file tree
Hide file tree
Showing 47 changed files with 57 additions and 4,511 deletions.
2 changes: 1 addition & 1 deletion Compiler/Compiler.cs
Expand Up @@ -2902,7 +2902,7 @@ public CompilationUnit CompileUnit(PascalABCCompiler.TreeRealization.unit_node_l

if (errorsList.Count == 0) // SSM 2/05/16 - для преобразования синтаксических деревьев извне
{
CurrentUnit.SyntaxTree = syntaxTreeConvertersController.Convert(CurrentUnit.SyntaxTree) as SyntaxTree.compilation_unit;
CurrentUnit.SyntaxTree = syntaxTreeConvertersController.Convert(CurrentUnit.SyntaxTree,UnitName,errorsList) as SyntaxTree.compilation_unit;
}

if (errorsList.Count == 0 && need_gen_doc(CurrentUnit.SyntaxTree))
Expand Down
Expand Up @@ -6,7 +6,7 @@
using System.Text;
using System.IO;
using PascalABCCompiler.SyntaxTree;
using PascalABCCompiler.SyntaxTreeConverters;
using PascalABCCompiler.Errors;

namespace PascalABCCompiler.SyntaxTreeConverters
{
Expand Down Expand Up @@ -87,12 +87,12 @@ private void AddConverters(string DirectoryName)

}

public syntax_tree_node Convert(syntax_tree_node root)
public syntax_tree_node Convert(syntax_tree_node root, string FileName, List<Error> errorsList)
{
foreach (ISyntaxTreeConverter SyntaxTreeConverter in syntaxTreeConverters)
{
ChangeState(State.Convert, SyntaxTreeConverter);
root = SyntaxTreeConverter.Convert(root);
root = SyntaxTreeConverter.Convert(root,FileName,errorsList);
}
return root;
}
Expand Down
1 change: 0 additions & 1 deletion Errors/Errors.cs
Expand Up @@ -153,7 +153,6 @@ public SyntaxError(string Message, string fileName, PascalABCCompiler.SyntaxTree
if (source_context != null && source_context.FileName != null)
base.fileName = source_context.FileName;
bad_node = _bad_node;
//Console.WriteLine(ToString());
}
public override string ToString()
{
Expand Down
5 changes: 2 additions & 3 deletions ParserTools/ParserTools.csproj
Expand Up @@ -75,6 +75,7 @@
<Compile Include="ParserTools\LanguageInformation.cs" />
<Compile Include="ParserTools\ParserTools.cs" />
<Compile Include="ParserTools\SourceContextMap.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SyntaxTreeVisitors\ConstantExpressionToConstantConvertor.cs" />
<Compile Include="SyntaxTreeVisitors\SyntaxTreeComparer.cs" />
<Compile Include="Tools.cs" />
Expand All @@ -96,9 +97,7 @@
<Name>SyntaxTree</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
Expand Down
23 changes: 17 additions & 6 deletions PascalABCNET.axml
Expand Up @@ -522,6 +522,17 @@
</i>
</OCtx>
</Node>
<Node Name="foreach (ISyntaxTreeConverter SyntaxTreeConverter in syntaxTreeConverters)">
<FileName>\Compiler\SyntaxTreeConvertersController\SyntaxTreeConvertersController.cs</FileName>
<Text>foreach (ISyntaxTreeConverter SyntaxTreeConverter in syntaxTreeConverters)</Text>
<OCtx>
<i Type="Method">public syntax_tree_node Convert ( syntax_tree_node root , string FileName , List &lt; Error &gt; errorsList )</i>
<i Type="ClassOrNamespace">public class SyntaxTreeConvertersController</i>
<i Type="ClassOrNamespace">namespace PascalABCCompiler . SyntaxTreeConverters</i>
<i Type="CS_TreeNode">
</i>
</OCtx>
</Node>
</Items>
</Node>
<Node Name="PVS Studio Detected">
Expand Down Expand Up @@ -1035,13 +1046,13 @@
</Node>
</Items>
</Node>
<Node Name="id.name.ToLower() == &quot;result&quot;">
<FileName>\Yield\SyntaxVisitors\YieldVisitors\MarkMethodHasYieldVisitor.cs</FileName>
<Text>if (id.name.ToLower() == "result")</Text>
<Node Name="AddErrorFromResource">
<FileName>\Parsers\PascalABCParserNewSaushkin\ABCPascalParserTools.cs</FileName>
<Text>public void AddErrorFromResource(string res, PascalABCCompiler.SyntaxTree.SourceContext loc, params string[] pars)</Text>
<OCtx>
<i Type="Method">public override void visit ( ident id )</i>
<i Type="ClassOrNamespace">public class MarkMethodHasYieldVisitor : WalkingVisitorNew</i>
<i Type="ClassOrNamespace">namespace SyntaxVisitors</i>
<i Type="Method">public void AddErrorFromResource ( string res , PascalABCCompiler . SyntaxTree . SourceContext loc , params string [ ] pars )</i>
<i Type="ClassOrNamespace">public class PT</i>
<i Type="ClassOrNamespace">namespace PascalABCSavParser</i>
<i Type="CS_TreeNode">
</i>
</OCtx>
Expand Down
8 changes: 7 additions & 1 deletion SyntaxTreeConverters/ISyntaxTreeConverter.cs
@@ -1,6 +1,8 @@
// Copyright (c) Ivan Bondarev, Stanislav Mihalkovich (for details please see \doc\copyright.txt)
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using PascalABCCompiler.SyntaxTree;
using PascalABCCompiler.Errors;
using System.Collections.Generic;

namespace PascalABCCompiler.SyntaxTreeConverters
{
Expand All @@ -14,6 +16,10 @@ public enum ExecutionOrder
}
public interface ISyntaxTreeConverter
{
string FileName { get; set; }

List<Error> ErrorsList { get; set; }

string Name { get; }

string Version { get; }
Expand All @@ -26,7 +32,7 @@ public interface ISyntaxTreeConverter

ExecutionOrder ExecutionOrder { get; }

syntax_tree_node Convert(syntax_tree_node root);
syntax_tree_node Convert(syntax_tree_node root, string FileName, List<Error> errorsList);

}
}
2 changes: 1 addition & 1 deletion SyntaxTreeConverters/Properties/AssemblyInfo.cs
Expand Up @@ -10,7 +10,7 @@
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SyntaxTreeChanger")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[assembly: AssemblyCopyright("Copyright © 2005-2016 by Ivan Bondarev, Stanislav Mihalkovich")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

Expand Down
7 changes: 6 additions & 1 deletion SyntaxTreeConverters/SampleSyntaxTreeConverter.cs
Expand Up @@ -4,6 +4,7 @@
using System.Text;
using System.IO;
using PascalABCCompiler.SyntaxTree;
using PascalABCCompiler.Errors;

namespace PascalABCCompiler.SyntaxTreeConverters
{
Expand Down Expand Up @@ -81,14 +82,18 @@ public override void visit(bin_expr n)

public class SampleSyntaxTreeConverter: ISyntaxTreeConverter
{
public string FileName { get; set; }
public List<Error> ErrorsList { get; set; }
public string Name { get; set; }
public string Version { get; set; }
public string Description { get; set; }
public string Copyright { get; set; }
public ConverterType ConverterType { get; set; }
public ExecutionOrder ExecutionOrder { get; set; }
public syntax_tree_node Convert(syntax_tree_node root)
public syntax_tree_node Convert(syntax_tree_node root, string FileName, List<Error> ErrorsList)
{
this.FileName = FileName;
this.ErrorsList = ErrorsList;
//var v = new SampleVisitor();
//v.ProcessNode(root);
return root;
Expand Down
167 changes: 0 additions & 167 deletions Yield/SyntaxVisitors/.gitignore

This file was deleted.

0 comments on commit bd19c5e

Please sign in to comment.