Browse Source

SD2-945: Typing a declaration of two or more variables in the same line (VB) throws exception

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1611 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 20 years ago
parent
commit
19d999cf82
  1. 40
      src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitor.cs
  2. 2
      src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorGlobal.cs
  3. 8
      src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorTypeMembers.cs
  4. 2
      src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs
  5. 6
      src/Libraries/NRefactory/NRefactoryASTGenerator/AST/GlobalLevel.cs
  6. 4
      src/Libraries/NRefactory/NRefactoryASTGenerator/Main.cs
  7. 9
      src/Libraries/NRefactory/Project/NRefactory.csproj
  8. 4
      src/Libraries/NRefactory/Project/Src/Ast/Enums.cs
  9. 8
      src/Libraries/NRefactory/Project/Src/Ast/General/LocalVariableDeclaration.cs
  10. 58
      src/Libraries/NRefactory/Project/Src/Ast/Generated.cs
  11. 6
      src/Libraries/NRefactory/Project/Src/Lexer/BuildKeywords.pl
  12. 4
      src/Libraries/NRefactory/Project/Src/Lexer/CSharp/Tokens.cs
  13. 27
      src/Libraries/NRefactory/Project/Src/Lexer/Special/PreProcessingDirective.cs
  14. 2
      src/Libraries/NRefactory/Project/Src/Lexer/VBNet/Lexer.cs
  15. 6
      src/Libraries/NRefactory/Project/Src/Lexer/VBNet/Tokens.cs
  16. 14
      src/Libraries/NRefactory/Project/Src/Parser/AbstractParser.cs
  17. 2
      src/Libraries/NRefactory/Project/Src/Parser/CSharp/CSharpParser.cs
  18. 128
      src/Libraries/NRefactory/Project/Src/Parser/CSharp/Parser.cs
  19. 128
      src/Libraries/NRefactory/Project/Src/Parser/CSharp/cs.ATG
  20. 42
      src/Libraries/NRefactory/Project/Src/Parser/ModifierList.cs
  21. 20
      src/Libraries/NRefactory/Project/Src/Parser/VBNet/ParamModifierList.cs
  22. 1546
      src/Libraries/NRefactory/Project/Src/Parser/VBNet/Parser.cs
  23. 172
      src/Libraries/NRefactory/Project/Src/Parser/VBNet/VBNET.ATG
  24. 6
      src/Libraries/NRefactory/Project/Src/Parser/VBNet/VBNetParser.cs
  25. 4
      src/Libraries/NRefactory/Project/Src/ParserFactory.cs
  26. 70
      src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs
  27. 16
      src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/PrettyPrintOptions.cs
  28. 8
      src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputFormatter.cs
  29. 68
      src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputVisitor.cs
  30. 28
      src/Libraries/NRefactory/Project/Src/Visitors/CodeDOMOutputVisitor.cs
  31. 3
      src/Libraries/NRefactory/Project/Src/Visitors/LookupTableVisitor.cs
  32. 4
      src/Libraries/NRefactory/Project/Src/Visitors/ToCSharpConvertVisitor.cs
  33. 18
      src/Libraries/NRefactory/Project/Src/Visitors/ToVBNetConvertVisitor.cs
  34. 25
      src/Libraries/NRefactory/Project/Src/Visitors/VBNetConstructsConvertVisitor.cs
  35. 28
      src/Libraries/NRefactory/Test/Parser/GlobalScope/TypeDeclarationTests.cs
  36. 2
      src/Libraries/NRefactory/Test/Parser/TypeLevel/ConstructorDeclarationTests.cs
  37. 2
      src/Libraries/NRefactory/Test/Parser/TypeLevel/MethodDeclarationTests.cs
  38. 2
      src/Main/Base/Project/Src/Dom/ModifierEnum.cs
  39. 4
      src/Main/Base/Project/Src/Dom/NRefactoryResolver/NRefactoryASTConvertVisitor.cs
  40. 21
      src/Main/Base/Project/Src/Services/RefactoringService/CodeGenerator.cs
  41. 8
      src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/AbstractClassImplementorCodeGenerator.cs
  42. 2
      src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/ConstructorCodeGenerator.cs
  43. 4
      src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/EqualsCodeGenerator.cs
  44. 2
      src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/ToStringCodeGenerator.cs

40
src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitor.cs

@ -88,61 +88,61 @@ namespace NRefactoryToBooConverter @@ -88,61 +88,61 @@ namespace NRefactoryToBooConverter
B.TypeMemberModifiers ConvertModifier(AttributedNode node, B.TypeMemberModifiers defaultVisibility)
{
Modifier m = node.Modifier;
Modifiers m = node.Modifier;
B.TypeMemberModifiers r = B.TypeMemberModifiers.None;
if ((m & Modifier.Private) != 0)
if ((m & Modifiers.Private) != 0)
r |= B.TypeMemberModifiers.Private;
if ((m & Modifier.Internal) != 0)
if ((m & Modifiers.Internal) != 0)
r |= B.TypeMemberModifiers.Internal;
if ((m & Modifier.Public) != 0)
if ((m & Modifiers.Public) != 0)
r |= B.TypeMemberModifiers.Public;
if ((m & Modifier.Protected) != 0)
if ((m & Modifiers.Protected) != 0)
r |= B.TypeMemberModifiers.Protected;
if (r == B.TypeMemberModifiers.None)
r = defaultVisibility;
if ((m & Modifier.Abstract) != 0)
if ((m & Modifiers.Abstract) != 0)
r |= B.TypeMemberModifiers.Abstract;
if ((m & Modifier.Virtual) != 0)
if ((m & Modifiers.Virtual) != 0)
r |= B.TypeMemberModifiers.Virtual;
if ((m & Modifier.Sealed) != 0)
if ((m & Modifiers.Sealed) != 0)
r |= B.TypeMemberModifiers.Final;
if ((m & Modifier.Static) != 0) {
if ((m & Modifiers.Static) != 0) {
r |= B.TypeMemberModifiers.Static;
} else if (currentType != null && currentType.IsStatic) {
if (!(node is TypeDeclaration))
r |= B.TypeMemberModifiers.Static;
}
if ((m & Modifier.Override) != 0)
if ((m & Modifiers.Override) != 0)
r |= B.TypeMemberModifiers.Override;
if ((m & Modifier.ReadOnly) != 0 && !(node is PropertyDeclaration)) {
if ((m & Modifiers.ReadOnly) != 0 && !(node is PropertyDeclaration)) {
r |= B.TypeMemberModifiers.Final;
}
if ((m & Modifier.Const) != 0) {
if ((m & Modifiers.Const) != 0) {
r |= B.TypeMemberModifiers.Final | B.TypeMemberModifiers.Static;
}
if ((m & Modifier.New) != 0) {
if ((m & Modifiers.New) != 0) {
AddError(node, "shadowing is not supported");
}
if ((m & Modifier.Partial) != 0) {
if ((m & Modifiers.Partial) != 0) {
r |= B.TypeMemberModifiers.Partial;
}
if ((m & Modifier.Extern) != 0) {
if ((m & Modifiers.Extern) != 0) {
// not necessary in Boo
}
if ((m & Modifier.Volatile) != 0) {
if ((m & Modifiers.Volatile) != 0) {
AddError(node, "Volatile modifier is not supported");
}
if ((m & Modifier.Unsafe) != 0) {
if ((m & Modifiers.Unsafe) != 0) {
AddError(node, "Unsafe modifier is not supported");
}
if ((m & Modifier.Overloads) != 0) {
if ((m & Modifiers.Overloads) != 0) {
// not necessary in Boo
}
if ((m & Modifier.WithEvents) != 0) {
if ((m & Modifiers.WithEvents) != 0) {
// not necessary in Boo
}
if ((m & Modifier.Default) != 0) {
if ((m & Modifiers.Default) != 0) {
ParametrizedNode parametrizedNode = node as ParametrizedNode;
string name = null;
if (parametrizedNode != null) {

2
src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorGlobal.cs

@ -101,7 +101,7 @@ namespace NRefactoryToBooConverter @@ -101,7 +101,7 @@ namespace NRefactoryToBooConverter
break;
case ClassType.Module:
typeDef = new B.ClassDefinition(GetLexicalInfo(typeDeclaration));
typeDeclaration.Modifier |= Modifier.Static;
typeDeclaration.Modifier |= Modifiers.Static;
break;
default:
AddError(typeDeclaration, "Unknown class type.");

8
src/AddIns/BackendBindings/Boo/NRefactoryToBooConverter/Project/ConvertVisitorTypeMembers.cs

@ -160,16 +160,16 @@ namespace NRefactoryToBooConverter @@ -160,16 +160,16 @@ namespace NRefactoryToBooConverter
B.ParameterDeclaration ConvertParameter(ParameterDeclarationExpression pde, out bool isParams)
{
B.ParameterDeclaration para = new B.ParameterDeclaration(pde.ParameterName, ConvertTypeReference(pde.TypeReference));
if ((pde.ParamModifier & ParamModifier.Optional) != 0) {
if ((pde.ParamModifier & ParameterModifiers.Optional) != 0) {
AddError(pde, "Optional parameters are not supported.");
}
if ((pde.ParamModifier & ParamModifier.Out) != 0) {
if ((pde.ParamModifier & ParameterModifiers.Out) != 0) {
para.Modifiers |= B.ParameterModifiers.Ref;
}
if ((pde.ParamModifier & ParamModifier.Ref) != 0) {
if ((pde.ParamModifier & ParameterModifiers.Ref) != 0) {
para.Modifiers |= B.ParameterModifiers.Ref;
}
isParams = (pde.ParamModifier & ParamModifier.Params) != 0;
isParams = (pde.ParamModifier & ParameterModifiers.Params) != 0;
ConvertAttributes(pde.Attributes, para.Attributes);
return para;
}

2
src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs

@ -200,7 +200,7 @@ namespace ICSharpCode.FormsDesigner @@ -200,7 +200,7 @@ namespace ICSharpCode.FormsDesigner
CompilationUnit combinedCu = new CompilationUnit();
NamespaceDeclaration nsDecl = new NamespaceDeclaration(formClass.Namespace);
combinedCu.AddChild(nsDecl);
TypeDeclaration formDecl = new TypeDeclaration(Modifier.Public, null);
TypeDeclaration formDecl = new TypeDeclaration(Modifiers.Public, null);
nsDecl.AddChild(formDecl);
formDecl.Name = formClass.Name;
foreach (KeyValuePair<string, CompilationUnit> entry in compilationUnits) {

6
src/Libraries/NRefactory/NRefactoryASTGenerator/AST/GlobalLevel.cs

@ -71,10 +71,10 @@ namespace NRefactoryASTGenerator.Ast @@ -71,10 +71,10 @@ namespace NRefactoryASTGenerator.Ast
public Using(string name, TypeReference alias) {}
}
[IncludeMember("public UsingDeclaration(string nameSpace) : this(nameSpace, null) {}")]
[IncludeMember("public UsingDeclaration(string nameSpace, TypeReference alias) {" +
[IncludeMember("public UsingDeclaration(string @namespace) : this(@namespace, null) {}")]
[IncludeMember("public UsingDeclaration(string @namespace, TypeReference alias) {" +
" usings = new List<Using>(1);" +
" usings.Add(new Using(nameSpace, alias)); " +
" usings.Add(new Using(@namespace, alias)); " +
"}")]
class UsingDeclaration : AbstractNode
{

4
src/Libraries/NRefactory/NRefactoryASTGenerator/Main.cs

@ -28,7 +28,7 @@ namespace NRefactoryASTGenerator @@ -28,7 +28,7 @@ namespace NRefactoryASTGenerator
Debug.WriteLine("did not find output directory");
return;
}
if (!File.Exists(visitorsDir + "IASTVisitor.cs")) {
if (!File.Exists(visitorsDir + "AbstractAstTransformer.cs")) {
Debug.WriteLine("did not find visitor output directory");
return;
}
@ -106,7 +106,7 @@ namespace NRefactoryASTGenerator @@ -106,7 +106,7 @@ namespace NRefactoryASTGenerator
using (StringWriter writer = new StringWriter()) {
new Microsoft.CSharp.CSharpCodeProvider().GenerateCodeFromCompileUnit(ccu, writer, settings);
File.WriteAllText(visitorsDir + "IAstVisitor.cs", writer.ToString());
File.WriteAllText(visitorsDir + "../IAstVisitor.cs", writer.ToString());
}
ccu = new CodeCompileUnit();

9
src/Libraries/NRefactory/Project/NRefactory.csproj

@ -23,7 +23,7 @@ @@ -23,7 +23,7 @@
<FileAlignment>4096</FileAlignment>
<PreBuildEvent>..\src\Tools\UpdateAssemblyInfo\bin\Debug\UpdateAssemblyInfo.exe</PreBuildEvent>
<RunCodeAnalysis>False</RunCodeAnalysis>
<CodeAnalysisRules>-Microsoft.Design#CA1002;-Microsoft.Design#CA1051;-Microsoft.Design#CA1062;-Microsoft.Globalization#CA1303;-Microsoft.Globalization#CA1305;-Microsoft.Naming#CA1704;-Microsoft.Performance#CA1800;-Microsoft.Performance#CA1805;-Microsoft.Usage#CA2211;-Microsoft.Usage#CA2227</CodeAnalysisRules>
<CodeAnalysisRules>-Microsoft.Design#CA1002;-Microsoft.Design#CA1020;-Microsoft.Design#CA1051;-Microsoft.Design#CA1062;-Microsoft.Globalization#CA1303;-Microsoft.Globalization#CA1305;-Microsoft.Naming#CA1704;-Microsoft.Performance#CA1800;-Microsoft.Performance#CA1805;-Microsoft.Usage#CA2211;-Microsoft.Usage#CA2227</CodeAnalysisRules>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Optimize>False</Optimize>
@ -76,13 +76,12 @@ @@ -76,13 +76,12 @@
</Compile>
<Compile Include="Src\Parser\CSharp\CSharpParser.cs" />
<Compile Include="Src\Parser\CSharp\Parser.cs" />
<Compile Include="Src\Parser\VBNet\ParamModifier.cs" />
<Compile Include="Src\Parser\VBNet\Parser.cs" />
<Compile Include="Src\Parser\VBNet\VBNetParser.cs" />
<Compile Include="Src\Parser\AbstractParser.cs" />
<Compile Include="Src\Parser\Errors.cs" />
<Compile Include="Src\Parser\IParser.cs" />
<Compile Include="Src\Parser\Modifiers.cs" />
<Compile Include="Src\Parser\ModifierList.cs" />
<Compile Include="Src\PrettyPrinter\CSharp\CSharpOutputVisitor.cs" />
<Compile Include="Src\PrettyPrinter\CSharp\OutputFormatter.cs" />
<Compile Include="Src\PrettyPrinter\CSharp\PrettyPrintOptions.cs" />
@ -122,13 +121,12 @@ @@ -122,13 +121,12 @@
<Compile Include="Src\Ast\INode.cs" />
<Compile Include="Src\Ast\INullable.cs" />
<Compile Include="Src\Ast\TypeReference.cs" />
<Compile Include="Src\Parser\VBNet\ParamModifierList.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="Src\Lexer\CSharp\KeywordList.txt" />
<Content Include="Src\Lexer\VBNet\KeywordList.txt" />
<Folder Include="Src\Parser" />
<Folder Include="Src\Parser\AST" />
<Folder Include="Src\Parser\AST\General" />
<Folder Include="Src\Parser\CSharp" />
<Content Include="Src\Parser\CSharp\cs.ATG" />
<Content Include="Src\Parser\CSharp\trace.txt" />
@ -142,7 +140,6 @@ @@ -142,7 +140,6 @@
<Content Include="Src\Parser\Frames\trace.txt" />
<Folder Include="Src\Parser\VBNet" />
<Content Include="Src\Parser\VBNet\VBNET.ATG" />
<Folder Include="Src\Parser\Visitors" />
<Content Include="Src\Parser\gen.bat" />
<Folder Include="Src\PrettyPrinter" />
<Folder Include="Src\PrettyPrinter\CSharp" />

4
src/Libraries/NRefactory/Project/Src/Ast/Enums.cs

@ -10,7 +10,7 @@ using System; @@ -10,7 +10,7 @@ using System;
namespace ICSharpCode.NRefactory.Ast
{
[Flags]
public enum Modifier // TODO: Rename to Modifiers
public enum Modifiers
{
None = 0x0000,
@ -107,7 +107,7 @@ namespace ICSharpCode.NRefactory.Ast @@ -107,7 +107,7 @@ namespace ICSharpCode.NRefactory.Ast
}
[Flags]
public enum ParamModifier // TODO: Rename to ParamModifiers
public enum ParameterModifiers
{
// Values must be the same as in SharpDevelop's ParameterModifiers
None = 0,

8
src/Libraries/NRefactory/Project/Src/Ast/General/LocalVariableDeclaration.cs

@ -15,7 +15,7 @@ namespace ICSharpCode.NRefactory.Ast @@ -15,7 +15,7 @@ namespace ICSharpCode.NRefactory.Ast
public class LocalVariableDeclaration : Statement
{
TypeReference typeReference;
Modifier modifier = Modifier.None;
Modifiers modifier = Modifiers.None;
List<VariableDeclaration> variables = new List<VariableDeclaration>(1);
public TypeReference TypeReference {
@ -27,7 +27,7 @@ namespace ICSharpCode.NRefactory.Ast @@ -27,7 +27,7 @@ namespace ICSharpCode.NRefactory.Ast
}
}
public Modifier Modifier {
public Modifiers Modifier {
get {
return modifier;
}
@ -66,13 +66,13 @@ namespace ICSharpCode.NRefactory.Ast @@ -66,13 +66,13 @@ namespace ICSharpCode.NRefactory.Ast
this.TypeReference = typeReference;
}
public LocalVariableDeclaration(TypeReference typeReference, Modifier modifier)
public LocalVariableDeclaration(TypeReference typeReference, Modifiers modifier)
{
this.TypeReference = typeReference;
this.modifier = modifier;
}
public LocalVariableDeclaration(Modifier modifier)
public LocalVariableDeclaration(Modifiers modifier)
{
this.typeReference = TypeReference.Null;
this.modifier = modifier;

58
src/Libraries/NRefactory/Project/Src/Ast/Generated.cs

@ -353,7 +353,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -353,7 +353,7 @@ namespace ICSharpCode.NRefactory.Ast {
List<AttributeSection> attributes;
Modifier modifier;
Modifiers modifier;
public List<AttributeSection> Attributes {
get {
@ -364,7 +364,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -364,7 +364,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public Modifier Modifier {
public Modifiers Modifier {
get {
return modifier;
}
@ -377,7 +377,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -377,7 +377,7 @@ namespace ICSharpCode.NRefactory.Ast {
Attributes = attributes;
}
protected AttributedNode(Modifier modifier, List<AttributeSection> attributes) {
protected AttributedNode(Modifiers modifier, List<AttributeSection> attributes) {
Modifier = modifier;
Attributes = attributes;
}
@ -855,13 +855,13 @@ namespace ICSharpCode.NRefactory.Ast { @@ -855,13 +855,13 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public ConstructorDeclaration(string name, Modifier modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) :
public ConstructorDeclaration(string name, Modifiers modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) :
base(modifier, attributes, name, parameters) {
constructorInitializer = ConstructorInitializer.Null;
body = BlockStatement.Null;
}
public ConstructorDeclaration(string name, Modifier modifier, List<ParameterDeclarationExpression> parameters, ConstructorInitializer constructorInitializer, List<AttributeSection> attributes) :
public ConstructorDeclaration(string name, Modifiers modifier, List<ParameterDeclarationExpression> parameters, ConstructorInitializer constructorInitializer, List<AttributeSection> attributes) :
base(modifier, attributes, name, parameters) {
ConstructorInitializer = constructorInitializer;
body = BlockStatement.Null;
@ -1029,7 +1029,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -1029,7 +1029,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public DeclareDeclaration(string name, Modifier modifier, TypeReference typeReference, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes, string library, string alias, CharsetModifier charset) :
public DeclareDeclaration(string name, Modifiers modifier, TypeReference typeReference, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes, string library, string alias, CharsetModifier charset) :
base(modifier, attributes, name, parameters) {
TypeReference = typeReference;
Library = library;
@ -1119,7 +1119,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -1119,7 +1119,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public DelegateDeclaration(Modifier modifier, List<AttributeSection> attributes) :
public DelegateDeclaration(Modifiers modifier, List<AttributeSection> attributes) :
base(attributes) {
Modifier = modifier;
name = "?";
@ -1163,7 +1163,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -1163,7 +1163,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public DestructorDeclaration(string name, Modifier modifier, List<AttributeSection> attributes) :
public DestructorDeclaration(string name, Modifiers modifier, List<AttributeSection> attributes) :
base(attributes) {
Name = name;
Modifier = modifier;
@ -1551,7 +1551,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -1551,7 +1551,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public EventDeclaration(TypeReference typeReference, string name, Modifier modifier, List<AttributeSection> attributes, List<ParameterDeclarationExpression> parameters) :
public EventDeclaration(TypeReference typeReference, string name, Modifiers modifier, List<AttributeSection> attributes, List<ParameterDeclarationExpression> parameters) :
base(modifier, attributes, name, parameters) {
TypeReference = typeReference;
interfaceImplementations = new List<InterfaceImplementation>();
@ -1562,7 +1562,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -1562,7 +1562,7 @@ namespace ICSharpCode.NRefactory.Ast {
bodyEnd = Location.Empty;
}
public EventDeclaration(TypeReference typeReference, Modifier modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes, string name, List<InterfaceImplementation> interfaceImplementations) :
public EventDeclaration(TypeReference typeReference, Modifiers modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes, string name, List<InterfaceImplementation> interfaceImplementations) :
base(modifier, attributes, name, parameters) {
TypeReference = typeReference;
InterfaceImplementations = interfaceImplementations;
@ -1785,7 +1785,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -1785,7 +1785,7 @@ namespace ICSharpCode.NRefactory.Ast {
fields = new List<VariableDeclaration>();
}
public FieldDeclaration(List<AttributeSection> attributes, TypeReference typeReference, Modifier modifier) :
public FieldDeclaration(List<AttributeSection> attributes, TypeReference typeReference, Modifiers modifier) :
base(attributes) {
TypeReference = typeReference;
Modifier = modifier;
@ -2369,7 +2369,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2369,7 +2369,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public IndexerDeclaration(Modifier modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) :
public IndexerDeclaration(Modifiers modifier, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) :
base(attributes) {
Modifier = modifier;
Parameters = parameters;
@ -2381,7 +2381,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2381,7 +2381,7 @@ namespace ICSharpCode.NRefactory.Ast {
setRegion = PropertySetRegion.Null;
}
public IndexerDeclaration(TypeReference typeReference, List<ParameterDeclarationExpression> parameters, Modifier modifier, List<AttributeSection> attributes) :
public IndexerDeclaration(TypeReference typeReference, List<ParameterDeclarationExpression> parameters, Modifiers modifier, List<AttributeSection> attributes) :
base(attributes) {
TypeReference = typeReference;
Parameters = parameters;
@ -2680,7 +2680,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2680,7 +2680,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public MethodDeclaration(string name, Modifier modifier, TypeReference typeReference, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) :
public MethodDeclaration(string name, Modifiers modifier, TypeReference typeReference, List<ParameterDeclarationExpression> parameters, List<AttributeSection> attributes) :
base(modifier, attributes, name, parameters) {
TypeReference = typeReference;
body = BlockStatement.Null;
@ -2852,13 +2852,13 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2852,13 +2852,13 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public OperatorDeclaration(Modifier modifier, List<AttributeSection> attributes, List<ParameterDeclarationExpression> parameters, TypeReference typeReference, ConversionType conversionType) :
public OperatorDeclaration(Modifiers modifier, List<AttributeSection> attributes, List<ParameterDeclarationExpression> parameters, TypeReference typeReference, ConversionType conversionType) :
base(null, modifier, typeReference, parameters, attributes) {
ConversionType = conversionType;
returnTypeAttributes = new List<AttributeSection>();
}
public OperatorDeclaration(Modifier modifier, List<AttributeSection> attributes, List<ParameterDeclarationExpression> parameters, TypeReference typeReference, OverloadableOperatorType overloadableOperator) :
public OperatorDeclaration(Modifiers modifier, List<AttributeSection> attributes, List<ParameterDeclarationExpression> parameters, TypeReference typeReference, OverloadableOperatorType overloadableOperator) :
base(null, modifier, typeReference, parameters, attributes) {
OverloadableOperator = overloadableOperator;
returnTypeAttributes = new List<AttributeSection>();
@ -2927,7 +2927,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2927,7 +2927,7 @@ namespace ICSharpCode.NRefactory.Ast {
TypeReference typeReference;
ParamModifier paramModifier;
ParameterModifiers paramModifier;
Expression defaultValue;
@ -2958,7 +2958,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2958,7 +2958,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public ParamModifier ParamModifier {
public ParameterModifiers ParamModifier {
get {
return paramModifier;
}
@ -2984,7 +2984,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2984,7 +2984,7 @@ namespace ICSharpCode.NRefactory.Ast {
defaultValue = Expression.Null;
}
public ParameterDeclarationExpression(TypeReference typeReference, string parameterName, ParamModifier paramModifier) {
public ParameterDeclarationExpression(TypeReference typeReference, string parameterName, ParameterModifiers paramModifier) {
TypeReference = typeReference;
ParameterName = parameterName;
ParamModifier = paramModifier;
@ -2992,7 +2992,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -2992,7 +2992,7 @@ namespace ICSharpCode.NRefactory.Ast {
defaultValue = Expression.Null;
}
public ParameterDeclarationExpression(TypeReference typeReference, string parameterName, ParamModifier paramModifier, Expression defaultValue) {
public ParameterDeclarationExpression(TypeReference typeReference, string parameterName, ParameterModifiers paramModifier, Expression defaultValue) {
TypeReference = typeReference;
ParameterName = parameterName;
ParamModifier = paramModifier;
@ -3034,14 +3034,14 @@ namespace ICSharpCode.NRefactory.Ast { @@ -3034,14 +3034,14 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
protected ParametrizedNode(Modifier modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) :
protected ParametrizedNode(Modifiers modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) :
base(attributes) {
Modifier = modifier;
Name = name;
Parameters = parameters;
}
protected ParametrizedNode(Modifier modifier, List<AttributeSection> attributes) :
protected ParametrizedNode(Modifiers modifier, List<AttributeSection> attributes) :
base(attributes) {
Modifier = modifier;
name = "";
@ -3183,7 +3183,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -3183,7 +3183,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public PropertyDeclaration(Modifier modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) :
public PropertyDeclaration(Modifiers modifier, List<AttributeSection> attributes, string name, List<ParameterDeclarationExpression> parameters) :
base(modifier, attributes, name, parameters) {
interfaceImplementations = new List<InterfaceImplementation>();
typeReference = TypeReference.Null;
@ -3206,13 +3206,13 @@ namespace ICSharpCode.NRefactory.Ast { @@ -3206,13 +3206,13 @@ namespace ICSharpCode.NRefactory.Ast {
}
public PropertyDeclaration(string name, TypeReference typeReference, Modifier modifier, List<AttributeSection> attributes) : this(modifier, attributes, name, null)
public PropertyDeclaration(string name, TypeReference typeReference, Modifiers modifier, List<AttributeSection> attributes) : this(modifier, attributes, name, null)
{
this.TypeReference = typeReference;
if ((modifier & Modifier.ReadOnly) != Modifier.ReadOnly) {
if ((modifier & Modifiers.ReadOnly) != Modifiers.ReadOnly) {
this.SetRegion = new PropertySetRegion(null, null);
}
if ((modifier & Modifier.WriteOnly) != Modifier.WriteOnly) {
if ((modifier & Modifiers.WriteOnly) != Modifiers.WriteOnly) {
this.GetRegion = new PropertyGetRegion(null, null);
}
}
@ -3900,7 +3900,7 @@ namespace ICSharpCode.NRefactory.Ast { @@ -3900,7 +3900,7 @@ namespace ICSharpCode.NRefactory.Ast {
}
}
public TypeDeclaration(Modifier modifier, List<AttributeSection> attributes) :
public TypeDeclaration(Modifiers modifier, List<AttributeSection> attributes) :
base(attributes) {
Modifier = modifier;
name = "";
@ -4203,9 +4203,9 @@ public TypeReferenceExpression(string typeName) : this(new TypeReference(typeNam @@ -4203,9 +4203,9 @@ public TypeReferenceExpression(string typeName) : this(new TypeReference(typeNam
Usings = usings;
}
public UsingDeclaration(string nameSpace) : this(nameSpace, null) {}
public UsingDeclaration(string @namespace) : this(@namespace, null) {}
public UsingDeclaration(string nameSpace, TypeReference alias) { usings = new List<Using>(1); usings.Add(new Using(nameSpace, alias)); }
public UsingDeclaration(string @namespace, TypeReference alias) { usings = new List<Using>(1); usings.Add(new Using(@namespace, alias)); }
public override object AcceptVisitor(IAstVisitor visitor, object data) {
return visitor.VisitUsingDeclaration(this, data);

6
src/Libraries/NRefactory/Project/Src/Lexer/BuildKeywords.pl

@ -174,7 +174,7 @@ sub write_tokensfile { @@ -174,7 +174,7 @@ sub write_tokensfile {
print DAT "\n";
print DAT "namespace " . $properties{'Namespace'} . "\n";
print DAT "{\n";
print DAT "\tpublic sealed class Tokens\n";
print DAT "\tpublic static class Tokens\n";
print DAT "\t{\n";
$tokenValue = 0;
@ -197,13 +197,13 @@ sub write_tokensfile { @@ -197,13 +197,13 @@ sub write_tokensfile {
}
print DAT "\n";
print DAT "\t\tpublic const int maxToken = " . $tokenValue . ";\n";
print DAT "\t\tpublic const int MaxToken = " . $tokenValue . ";\n";
#write sets.
if ($#sets > 0) {
print DAT "\t\tstatic BitArray NewSet(params int[] values)\n";
print DAT "\t\t{\n";
print DAT "\t\t\tBitArray bitArray = new BitArray(maxToken);\n";
print DAT "\t\t\tBitArray bitArray = new BitArray(MaxToken);\n";
print DAT "\t\t\tforeach (int val in values) {\n";
print DAT "\t\t\tbitArray[val] = true;\n";
print DAT "\t\t\t}\n";

4
src/Libraries/NRefactory/Project/Src/Lexer/CSharp/Tokens.cs

@ -144,10 +144,10 @@ namespace ICSharpCode.NRefactory.Parser.CSharp @@ -144,10 +144,10 @@ namespace ICSharpCode.NRefactory.Parser.CSharp
public const int Volatile = 123;
public const int While = 124;
public const int maxToken = 125;
public const int MaxToken = 125;
static BitArray NewSet(params int[] values)
{
BitArray bitArray = new BitArray(maxToken);
BitArray bitArray = new BitArray(MaxToken);
foreach (int val in values) {
bitArray[val] = true;
}

27
src/Libraries/NRefactory/Project/Src/Lexer/Special/PreProcessingDirective.cs

@ -23,22 +23,19 @@ namespace ICSharpCode.NRefactory @@ -23,22 +23,19 @@ namespace ICSharpCode.NRefactory
public static PreprocessingDirective VBToCSharp(PreprocessingDirective dir)
{
string cmd = dir.Cmd.ToLowerInvariant();
string cmd = dir.Cmd;
string arg = dir.Arg;
switch (cmd) {
case "#end":
if (arg.ToLowerInvariant().StartsWith("region")) {
cmd = "#endregion";
arg = "";
} else if ("if".Equals(arg, StringComparison.InvariantCultureIgnoreCase)) {
cmd = "#endif";
arg = "";
}
break;
case "#if":
if (arg.ToLowerInvariant().EndsWith(" then"))
arg = arg.Substring(0, arg.Length - 5);
break;
if (cmd.Equals("#end", StringComparison.InvariantCultureIgnoreCase)) {
if (arg.ToLowerInvariant().StartsWith("region")) {
cmd = "#endregion";
arg = "";
} else if ("if".Equals(arg, StringComparison.InvariantCultureIgnoreCase)) {
cmd = "#endif";
arg = "";
}
} else if (cmd.Equals("#if", StringComparison.InvariantCultureIgnoreCase)) {
if (arg.ToLowerInvariant().EndsWith(" then"))
arg = arg.Substring(0, arg.Length - 5);
}
return new PreprocessingDirective(cmd, arg, dir.StartPosition, dir.EndPosition);
}

2
src/Libraries/NRefactory/Project/Src/Lexer/VBNet/Lexer.cs

@ -532,8 +532,6 @@ namespace ICSharpCode.NRefactory.Parser.VB @@ -532,8 +532,6 @@ namespace ICSharpCode.NRefactory.Parser.VB
sb.Length = 0;
StringBuilder curWord = specialCommentHash != null ? new StringBuilder() : null;
int missingApostrophes = 2; // no. of ' missing until it is a documentation comment
//int x = Col;
int y = Line;
int nextChar;
while ((nextChar = ReaderRead()) != -1) {
char ch = (char)nextChar;

6
src/Libraries/NRefactory/Project/Src/Lexer/VBNet/Tokens.cs

@ -11,7 +11,7 @@ using System.Collections; @@ -11,7 +11,7 @@ using System.Collections;
namespace ICSharpCode.NRefactory.Parser.VB
{
public sealed class Tokens
public static class Tokens
{
// ----- terminal classes -----
public const int EOF = 0;
@ -224,10 +224,10 @@ namespace ICSharpCode.NRefactory.Parser.VB @@ -224,10 +224,10 @@ namespace ICSharpCode.NRefactory.Parser.VB
public const int Partial = 203;
public const int Custom = 204;
public const int maxToken = 205;
public const int MaxToken = 205;
static BitArray NewSet(params int[] values)
{
BitArray bitArray = new BitArray(maxToken);
BitArray bitArray = new BitArray(MaxToken);
foreach (int val in values) {
bitArray[val] = true;
}

14
src/Libraries/NRefactory/Project/Src/Parser/AbstractParser.cs

@ -10,19 +10,16 @@ using ICSharpCode.NRefactory.Ast; @@ -10,19 +10,16 @@ using ICSharpCode.NRefactory.Ast;
namespace ICSharpCode.NRefactory.Parser
{
/// <summary>
/// Description of AbstractParser.
/// </summary>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1708:IdentifiersShouldDifferByMoreThanCase")]
public abstract class AbstractParser : IParser
{
protected const int minErrDist = 2;
protected const string errMsgFormat = "-- line {0} col {1}: {2}"; // 0=line, 1=column, 2=text
protected const int MinErrDist = 2;
protected const string ErrMsgFormat = "-- line {0} col {1}: {2}"; // 0=line, 1=column, 2=text
protected Errors errors;
private ILexer lexer;
protected int errDist = minErrDist;
protected int errDist = MinErrDist;
protected CompilationUnit compilationUnit;
@ -70,7 +67,7 @@ namespace ICSharpCode.NRefactory.Parser @@ -70,7 +67,7 @@ namespace ICSharpCode.NRefactory.Parser
protected void SynErr(int n)
{
if (errDist >= minErrDist) {
if (errDist >= MinErrDist) {
errors.SynErr(lexer.LookAhead.line, lexer.LookAhead.col, n);
}
errDist = 0;
@ -78,7 +75,7 @@ namespace ICSharpCode.NRefactory.Parser @@ -78,7 +75,7 @@ namespace ICSharpCode.NRefactory.Parser
protected void SemErr(string msg)
{
if (errDist >= minErrDist) {
if (errDist >= MinErrDist) {
errors.Error(lexer.Token.line, lexer.Token.col, msg);
}
errDist = 0;
@ -94,6 +91,7 @@ namespace ICSharpCode.NRefactory.Parser @@ -94,6 +91,7 @@ namespace ICSharpCode.NRefactory.Parser
}
#region System.IDisposable interface implementation
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1063:ImplementIDisposableCorrectly")]
public void Dispose()
{
errors = null;

2
src/Libraries/NRefactory/Project/Src/Parser/CSharp/CSharpParser.cs

@ -39,7 +39,7 @@ namespace ICSharpCode.NRefactory.Parser.CSharp @@ -39,7 +39,7 @@ namespace ICSharpCode.NRefactory.Parser.CSharp
public void Error(string s)
{
if (errDist >= minErrDist) {
if (errDist >= MinErrDist) {
errors.Error(la.line, la.col, s);
}
errDist = 0;

128
src/Libraries/NRefactory/Project/Src/Parser/CSharp/Parser.cs

@ -136,7 +136,7 @@ out attribute); @@ -136,7 +136,7 @@ out attribute);
#line 293 "cs.ATG"
AttributeSection section;
List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
string qualident;
if (la.kind == 87) {
@ -490,76 +490,76 @@ out attribute); @@ -490,76 +490,76 @@ out attribute);
void TypeModifier(
#line 639 "cs.ATG"
Modifiers m) {
ModifierList m) {
switch (la.kind) {
case 88: {
lexer.NextToken();
#line 641 "cs.ATG"
m.Add(Modifier.New, t.Location);
m.Add(Modifiers.New, t.Location);
break;
}
case 97: {
lexer.NextToken();
#line 642 "cs.ATG"
m.Add(Modifier.Public, t.Location);
m.Add(Modifiers.Public, t.Location);
break;
}
case 96: {
lexer.NextToken();
#line 643 "cs.ATG"
m.Add(Modifier.Protected, t.Location);
m.Add(Modifiers.Protected, t.Location);
break;
}
case 83: {
lexer.NextToken();
#line 644 "cs.ATG"
m.Add(Modifier.Internal, t.Location);
m.Add(Modifiers.Internal, t.Location);
break;
}
case 95: {
lexer.NextToken();
#line 645 "cs.ATG"
m.Add(Modifier.Private, t.Location);
m.Add(Modifiers.Private, t.Location);
break;
}
case 118: {
lexer.NextToken();
#line 646 "cs.ATG"
m.Add(Modifier.Unsafe, t.Location);
m.Add(Modifiers.Unsafe, t.Location);
break;
}
case 48: {
lexer.NextToken();
#line 647 "cs.ATG"
m.Add(Modifier.Abstract, t.Location);
m.Add(Modifiers.Abstract, t.Location);
break;
}
case 102: {
lexer.NextToken();
#line 648 "cs.ATG"
m.Add(Modifier.Sealed, t.Location);
m.Add(Modifiers.Sealed, t.Location);
break;
}
case 106: {
lexer.NextToken();
#line 649 "cs.ATG"
m.Add(Modifier.Static, t.Location);
m.Add(Modifiers.Static, t.Location);
break;
}
case 1: {
lexer.NextToken();
#line 650 "cs.ATG"
if (t.val == "partial") { m.Add(Modifier.Partial, t.Location); } else { Error("Unexpected identifier"); }
if (t.val == "partial") { m.Add(Modifiers.Partial, t.Location); } else { Error("Unexpected identifier"); }
break;
}
default: SynErr(130); break;
@ -568,7 +568,7 @@ Modifiers m) { @@ -568,7 +568,7 @@ Modifiers m) {
void TypeDecl(
#line 318 "cs.ATG"
Modifiers m, List<AttributeSection> attributes) {
ModifierList m, List<AttributeSection> attributes) {
#line 320 "cs.ATG"
TypeReference type;
@ -580,7 +580,7 @@ Modifiers m, List<AttributeSection> attributes) { @@ -580,7 +580,7 @@ Modifiers m, List<AttributeSection> attributes) {
if (la.kind == 58) {
#line 326 "cs.ATG"
m.Check(Modifier.Classes);
m.Check(Modifiers.Classes);
lexer.NextToken();
#line 327 "cs.ATG"
@ -631,7 +631,7 @@ templates); @@ -631,7 +631,7 @@ templates);
} else if (StartOf(8)) {
#line 350 "cs.ATG"
m.Check(Modifier.StructsInterfacesEnumsDelegates);
m.Check(Modifiers.StructsInterfacesEnumsDelegates);
if (la.kind == 108) {
lexer.NextToken();
@ -942,7 +942,7 @@ out type); @@ -942,7 +942,7 @@ out type);
#line 460 "cs.ATG"
List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
while (la.kind == 18) {
AttributeSection(
@ -997,7 +997,7 @@ out typeRef, false); @@ -997,7 +997,7 @@ out typeRef, false);
#line 484 "cs.ATG"
List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
while (la.kind == 18) {
AttributeSection(
@ -1315,7 +1315,7 @@ out typeArguments, canBeUnbound); @@ -1315,7 +1315,7 @@ out typeArguments, canBeUnbound);
void MemberModifiers(
#line 674 "cs.ATG"
Modifiers m) {
ModifierList m) {
while (StartOf(15) ||
#line 691 "cs.ATG"
la.kind == Tokens.Identifier && la.val == "partial") {
@ -1323,84 +1323,84 @@ la.kind == Tokens.Identifier && la.val == "partial") { @@ -1323,84 +1323,84 @@ la.kind == Tokens.Identifier && la.val == "partial") {
lexer.NextToken();
#line 677 "cs.ATG"
m.Add(Modifier.Abstract, t.Location);
m.Add(Modifiers.Abstract, t.Location);
} else if (la.kind == 70) {
lexer.NextToken();
#line 678 "cs.ATG"
m.Add(Modifier.Extern, t.Location);
m.Add(Modifiers.Extern, t.Location);
} else if (la.kind == 83) {
lexer.NextToken();
#line 679 "cs.ATG"
m.Add(Modifier.Internal, t.Location);
m.Add(Modifiers.Internal, t.Location);
} else if (la.kind == 88) {
lexer.NextToken();
#line 680 "cs.ATG"
m.Add(Modifier.New, t.Location);
m.Add(Modifiers.New, t.Location);
} else if (la.kind == 93) {
lexer.NextToken();
#line 681 "cs.ATG"
m.Add(Modifier.Override, t.Location);
m.Add(Modifiers.Override, t.Location);
} else if (la.kind == 95) {
lexer.NextToken();
#line 682 "cs.ATG"
m.Add(Modifier.Private, t.Location);
m.Add(Modifiers.Private, t.Location);
} else if (la.kind == 96) {
lexer.NextToken();
#line 683 "cs.ATG"
m.Add(Modifier.Protected, t.Location);
m.Add(Modifiers.Protected, t.Location);
} else if (la.kind == 97) {
lexer.NextToken();
#line 684 "cs.ATG"
m.Add(Modifier.Public, t.Location);
m.Add(Modifiers.Public, t.Location);
} else if (la.kind == 98) {
lexer.NextToken();
#line 685 "cs.ATG"
m.Add(Modifier.ReadOnly, t.Location);
m.Add(Modifiers.ReadOnly, t.Location);
} else if (la.kind == 102) {
lexer.NextToken();
#line 686 "cs.ATG"
m.Add(Modifier.Sealed, t.Location);
m.Add(Modifiers.Sealed, t.Location);
} else if (la.kind == 106) {
lexer.NextToken();
#line 687 "cs.ATG"
m.Add(Modifier.Static, t.Location);
m.Add(Modifiers.Static, t.Location);
} else if (la.kind == 118) {
lexer.NextToken();
#line 688 "cs.ATG"
m.Add(Modifier.Unsafe, t.Location);
m.Add(Modifiers.Unsafe, t.Location);
} else if (la.kind == 121) {
lexer.NextToken();
#line 689 "cs.ATG"
m.Add(Modifier.Virtual, t.Location);
m.Add(Modifiers.Virtual, t.Location);
} else if (la.kind == 123) {
lexer.NextToken();
#line 690 "cs.ATG"
m.Add(Modifier.Volatile, t.Location);
m.Add(Modifiers.Volatile, t.Location);
} else {
Expect(1);
#line 692 "cs.ATG"
m.Add(Modifier.Partial, t.Location);
m.Add(Modifiers.Partial, t.Location);
}
}
}
void ClassMemberDecl(
#line 967 "cs.ATG"
Modifiers m, List<AttributeSection> attributes) {
ModifierList m, List<AttributeSection> attributes) {
#line 968 "cs.ATG"
Statement stmt = null;
@ -1411,7 +1411,7 @@ m, attributes); @@ -1411,7 +1411,7 @@ m, attributes);
} else if (la.kind == 27) {
#line 971 "cs.ATG"
m.Check(Modifier.Destructors); Location startPos = t.Location;
m.Check(Modifiers.Destructors); Location startPos = t.Location;
lexer.NextToken();
Expect(1);
@ -1442,7 +1442,7 @@ out stmt); @@ -1442,7 +1442,7 @@ out stmt);
void StructMemberDecl(
#line 697 "cs.ATG"
Modifiers m, List<AttributeSection> attributes) {
ModifierList m, List<AttributeSection> attributes) {
#line 699 "cs.ATG"
string qualident = null;
@ -1457,7 +1457,7 @@ Modifiers m, List<AttributeSection> attributes) { @@ -1457,7 +1457,7 @@ Modifiers m, List<AttributeSection> attributes) {
if (la.kind == 59) {
#line 709 "cs.ATG"
m.Check(Modifier.Constants);
m.Check(Modifiers.Constants);
lexer.NextToken();
#line 710 "cs.ATG"
@ -1468,7 +1468,7 @@ out type); @@ -1468,7 +1468,7 @@ out type);
Expect(1);
#line 711 "cs.ATG"
FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier | Modifier.Const);
FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier | Modifiers.Const);
fd.StartLocation = m.GetDeclarationLocation(startPos);
VariableDeclaration f = new VariableDeclaration(t.val);
fd.Fields.Add(f);
@ -1505,7 +1505,7 @@ out expr); @@ -1505,7 +1505,7 @@ out expr);
NotVoidPointer()) {
#line 725 "cs.ATG"
m.Check(Modifier.PropertysEventsMethods);
m.Check(Modifiers.PropertysEventsMethods);
Expect(122);
#line 726 "cs.ATG"
@ -1576,7 +1576,7 @@ out stmt); @@ -1576,7 +1576,7 @@ out stmt);
} else if (la.kind == 68) {
#line 760 "cs.ATG"
m.Check(Modifier.PropertysEventsMethods);
m.Check(Modifiers.PropertysEventsMethods);
lexer.NextToken();
#line 761 "cs.ATG"
@ -1641,7 +1641,7 @@ out addBlock, out removeBlock); @@ -1641,7 +1641,7 @@ out addBlock, out removeBlock);
IdentAndLPar()) {
#line 788 "cs.ATG"
m.Check(Modifier.Constructors | Modifier.StaticConstructors);
m.Check(Modifiers.Constructors | Modifiers.StaticConstructors);
Expect(1);
#line 789 "cs.ATG"
@ -1650,7 +1650,7 @@ IdentAndLPar()) { @@ -1650,7 +1650,7 @@ IdentAndLPar()) {
if (StartOf(10)) {
#line 789 "cs.ATG"
m.Check(Modifier.Constructors);
m.Check(Modifiers.Constructors);
FormalParameterList(
#line 790 "cs.ATG"
p);
@ -1662,7 +1662,7 @@ p); @@ -1662,7 +1662,7 @@ p);
if (la.kind == 9) {
#line 793 "cs.ATG"
m.Check(Modifier.Constructors);
m.Check(Modifiers.Constructors);
ConstructorInitializer(
#line 794 "cs.ATG"
out init);
@ -1686,7 +1686,7 @@ out stmt); @@ -1686,7 +1686,7 @@ out stmt);
} else if (la.kind == 69 || la.kind == 79) {
#line 804 "cs.ATG"
m.Check(Modifier.Operators);
m.Check(Modifiers.Operators);
if (m.isNone) Error("at least one modifier must be set");
bool isImplicit = true;
Location startPos = Location.Empty;
@ -1761,7 +1761,7 @@ out type); @@ -1761,7 +1761,7 @@ out type);
#line 836 "cs.ATG"
OverloadableOperatorType op;
m.Check(Modifier.Operators);
m.Check(Modifiers.Operators);
if (m.isNone) Error("at least one modifier must be set");
lexer.NextToken();
@ -1823,7 +1823,7 @@ out stmt); @@ -1823,7 +1823,7 @@ out stmt);
IsVarDecl()) {
#line 870 "cs.ATG"
m.Check(Modifier.Fields);
m.Check(Modifiers.Fields);
FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier);
fd.StartLocation = m.GetDeclarationLocation(startPos);
@ -1843,7 +1843,7 @@ variableDeclarators); @@ -1843,7 +1843,7 @@ variableDeclarators);
} else if (la.kind == 110) {
#line 879 "cs.ATG"
m.Check(Modifier.Indexers);
m.Check(Modifiers.Indexers);
lexer.NextToken();
Expect(18);
FormalParameterList(
@ -1901,7 +1901,7 @@ out explicitInterface, false); @@ -1901,7 +1901,7 @@ out explicitInterface, false);
if (la.kind == 20 || la.kind == 23) {
#line 906 "cs.ATG"
m.Check(Modifier.PropertysEventsMethods);
m.Check(Modifiers.PropertysEventsMethods);
if (la.kind == 23) {
TypeParameterList(
#line 908 "cs.ATG"
@ -1973,7 +1973,7 @@ out getRegion, out setRegion); @@ -1973,7 +1973,7 @@ out getRegion, out setRegion);
} else if (la.kind == 15) {
#line 945 "cs.ATG"
m.Check(Modifier.Indexers);
m.Check(Modifiers.Indexers);
lexer.NextToken();
Expect(110);
Expect(18);
@ -2018,7 +2018,7 @@ out getRegion, out setRegion); @@ -2018,7 +2018,7 @@ out getRegion, out setRegion);
TypeReference type;
AttributeSection section;
Modifier mod = Modifier.None;
Modifiers mod = Modifiers.None;
List<AttributeSection> attributes = new List<AttributeSection>();
List<ParameterDeclarationExpression> parameters = new List<ParameterDeclarationExpression>();
string name;
@ -2039,7 +2039,7 @@ out section); @@ -2039,7 +2039,7 @@ out section);
lexer.NextToken();
#line 998 "cs.ATG"
mod = Modifier.New; startLocation = t.Location;
mod = Modifiers.New; startLocation = t.Location;
}
if (
#line 1001 "cs.ATG"
@ -2346,7 +2346,7 @@ out ParameterDeclarationExpression p) { @@ -2346,7 +2346,7 @@ out ParameterDeclarationExpression p) {
#line 611 "cs.ATG"
TypeReference type;
ParamModifier mod = ParamModifier.In;
ParameterModifiers mod = ParameterModifiers.In;
Location start = t.Location;
if (la.kind == 92 || la.kind == 99) {
@ -2354,12 +2354,12 @@ out ParameterDeclarationExpression p) { @@ -2354,12 +2354,12 @@ out ParameterDeclarationExpression p) {
lexer.NextToken();
#line 617 "cs.ATG"
mod = ParamModifier.Ref;
mod = ParameterModifiers.Ref;
} else {
lexer.NextToken();
#line 618 "cs.ATG"
mod = ParamModifier.Out;
mod = ParameterModifiers.Out;
}
}
Type(
@ -2384,41 +2384,41 @@ out type); @@ -2384,41 +2384,41 @@ out type);
Expect(1);
#line 626 "cs.ATG"
p = new ParameterDeclarationExpression(type, t.val, ParamModifier.Params);
p = new ParameterDeclarationExpression(type, t.val, ParameterModifiers.Params);
}
void AccessorModifiers(
#line 629 "cs.ATG"
out Modifiers m) {
out ModifierList m) {
#line 630 "cs.ATG"
m = new Modifiers();
m = new ModifierList();
if (la.kind == 95) {
lexer.NextToken();
#line 632 "cs.ATG"
m.Add(Modifier.Private, t.Location);
m.Add(Modifiers.Private, t.Location);
} else if (la.kind == 96) {
lexer.NextToken();
#line 633 "cs.ATG"
m.Add(Modifier.Protected, t.Location);
m.Add(Modifiers.Protected, t.Location);
if (la.kind == 83) {
lexer.NextToken();
#line 634 "cs.ATG"
m.Add(Modifier.Internal, t.Location);
m.Add(Modifiers.Internal, t.Location);
}
} else if (la.kind == 83) {
lexer.NextToken();
#line 635 "cs.ATG"
m.Add(Modifier.Internal, t.Location);
m.Add(Modifiers.Internal, t.Location);
if (la.kind == 96) {
lexer.NextToken();
#line 636 "cs.ATG"
m.Add(Modifier.Protected, t.Location);
m.Add(Modifiers.Protected, t.Location);
}
} else SynErr(157);
}
@ -2758,7 +2758,7 @@ out PropertyGetRegion getBlock, out PropertySetRegion setBlock) { @@ -2758,7 +2758,7 @@ out PropertyGetRegion getBlock, out PropertySetRegion setBlock) {
AttributeSection section;
getBlock = null;
setBlock = null;
Modifiers modifiers = null;
ModifierList modifiers = null;
while (la.kind == 18) {
AttributeSection(
@ -3077,7 +3077,7 @@ IsLabel()) { @@ -3077,7 +3077,7 @@ IsLabel()) {
out type);
#line 1357 "cs.ATG"
LocalVariableDeclaration var = new LocalVariableDeclaration(type, Modifier.Const); string ident = null; var.StartLocation = t.Location;
LocalVariableDeclaration var = new LocalVariableDeclaration(type, Modifiers.Const); string ident = null; var.StartLocation = t.Location;
Expect(1);
#line 1358 "cs.ATG"

128
src/Libraries/NRefactory/Project/Src/Parser/CSharp/cs.ATG

@ -292,7 +292,7 @@ NamespaceMemberDecl @@ -292,7 +292,7 @@ NamespaceMemberDecl
(.
AttributeSection section;
List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
string qualident;
.)
= /*--- namespace declaration: */
@ -315,7 +315,7 @@ NamespaceMemberDecl @@ -315,7 +315,7 @@ NamespaceMemberDecl
TypeDecl<m, attributes>
.
TypeDecl<Modifiers m, List<AttributeSection> attributes>
TypeDecl<ModifierList m, List<AttributeSection> attributes>
(.
TypeReference type;
List<TypeReference> names;
@ -323,7 +323,7 @@ TypeDecl<Modifiers m, List<AttributeSection> attributes> @@ -323,7 +323,7 @@ TypeDecl<Modifiers m, List<AttributeSection> attributes>
string name;
List<TemplateDefinition> templates;
.)
= /*--- class declaration: */ (. m.Check(Modifier.Classes); .)
= /*--- class declaration: */ (. m.Check(Modifiers.Classes); .)
"class" (. TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
templates = newType.Templates;
compilationUnit.AddChild(newType);
@ -347,7 +347,7 @@ TypeDecl<Modifiers m, List<AttributeSection> attributes> @@ -347,7 +347,7 @@ TypeDecl<Modifiers m, List<AttributeSection> attributes>
[ ";" ] (. newType.EndLocation = t.Location;
compilationUnit.BlockEnd();
.)
| /*--- struct declaration: */ (. m.Check(Modifier.StructsInterfacesEnumsDelegates); .)
| /*--- struct declaration: */ (. m.Check(Modifiers.StructsInterfacesEnumsDelegates); .)
( "struct" (. TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
templates = newType.Templates;
newType.StartLocation = m.GetDeclarationLocation(t.Location);
@ -458,7 +458,7 @@ ClassBody @@ -458,7 +458,7 @@ ClassBody
=
"{"
{ (.List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
.)
{ AttributeSection<out section> (. attributes.Add(section); .) }
MemberModifiers<m>
@ -482,7 +482,7 @@ StructBody @@ -482,7 +482,7 @@ StructBody
=
"{"
{ (.List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
.)
{ AttributeSection<out section> (. attributes.Add(section); .) }
MemberModifiers<m>
@ -609,13 +609,13 @@ FormalParameterList<List<ParameterDeclarationExpression> parameter> @@ -609,13 +609,13 @@ FormalParameterList<List<ParameterDeclarationExpression> parameter>
FixedParameter<out ParameterDeclarationExpression p>
(.
TypeReference type;
ParamModifier mod = ParamModifier.In;
ParameterModifiers mod = ParameterModifiers.In;
Location start = t.Location;
.)
=
[
"ref" (. mod = ParamModifier.Ref; .)
| "out" (. mod = ParamModifier.Out; .)
"ref" (. mod = ParameterModifiers.Ref; .)
| "out" (. mod = ParameterModifiers.Out; .)
]
Type<out type> ident (. p = new ParameterDeclarationExpression(type, t.val, mod); p.StartLocation = start; p.EndLocation = t.Location; .)
.
@ -623,31 +623,31 @@ FixedParameter<out ParameterDeclarationExpression p> @@ -623,31 +623,31 @@ FixedParameter<out ParameterDeclarationExpression p>
ParameterArray<out ParameterDeclarationExpression p>
(. TypeReference type; .)
=
"params" Type<out type> ident (. p = new ParameterDeclarationExpression(type, t.val, ParamModifier.Params); .)
"params" Type<out type> ident (. p = new ParameterDeclarationExpression(type, t.val, ParameterModifiers.Params); .)
.
AccessorModifiers<out Modifiers m>
(. m = new Modifiers(); .)
AccessorModifiers<out ModifierList m>
(. m = new ModifierList(); .)
=
"private" (. m.Add(Modifier.Private, t.Location); .)
| "protected" (. m.Add(Modifier.Protected, t.Location); .)
["internal" (. m.Add(Modifier.Internal, t.Location); .)]
| "internal" (. m.Add(Modifier.Internal, t.Location); .)
["protected" (. m.Add(Modifier.Protected, t.Location); .)]
"private" (. m.Add(Modifiers.Private, t.Location); .)
| "protected" (. m.Add(Modifiers.Protected, t.Location); .)
["internal" (. m.Add(Modifiers.Internal, t.Location); .)]
| "internal" (. m.Add(Modifiers.Internal, t.Location); .)
["protected" (. m.Add(Modifiers.Protected, t.Location); .)]
.
TypeModifier<Modifiers m>
TypeModifier<ModifierList m>
=
"new" (. m.Add(Modifier.New, t.Location); .)
| "public" (. m.Add(Modifier.Public, t.Location); .)
| "protected" (. m.Add(Modifier.Protected, t.Location); .)
| "internal" (. m.Add(Modifier.Internal, t.Location); .)
| "private" (. m.Add(Modifier.Private, t.Location); .)
| "unsafe" (. m.Add(Modifier.Unsafe, t.Location); .)
| "abstract" (. m.Add(Modifier.Abstract, t.Location); .)
| "sealed" (. m.Add(Modifier.Sealed, t.Location); .)
| "static" (. m.Add(Modifier.Static, t.Location); .)
| ident (. if (t.val == "partial") { m.Add(Modifier.Partial, t.Location); } else { Error("Unexpected identifier"); } .)
"new" (. m.Add(Modifiers.New, t.Location); .)
| "public" (. m.Add(Modifiers.Public, t.Location); .)
| "protected" (. m.Add(Modifiers.Protected, t.Location); .)
| "internal" (. m.Add(Modifiers.Internal, t.Location); .)
| "private" (. m.Add(Modifiers.Private, t.Location); .)
| "unsafe" (. m.Add(Modifiers.Unsafe, t.Location); .)
| "abstract" (. m.Add(Modifiers.Abstract, t.Location); .)
| "sealed" (. m.Add(Modifiers.Sealed, t.Location); .)
| "static" (. m.Add(Modifiers.Static, t.Location); .)
| ident (. if (t.val == "partial") { m.Add(Modifiers.Partial, t.Location); } else { Error("Unexpected identifier"); } .)
.
ClassType<out TypeReference typeRef, bool canBeUnbound>
@ -671,30 +671,30 @@ IntegralType<out string name> (. name = ""; .) @@ -671,30 +671,30 @@ IntegralType<out string name> (. name = ""; .)
| "char" (. name = "char"; .)
.
MemberModifiers<Modifiers m>
MemberModifiers<ModifierList m>
=
{
"abstract" (. m.Add(Modifier.Abstract, t.Location); .)
| "extern" (. m.Add(Modifier.Extern, t.Location); .)
| "internal" (. m.Add(Modifier.Internal, t.Location); .)
| "new" (. m.Add(Modifier.New, t.Location); .)
| "override" (. m.Add(Modifier.Override, t.Location); .)
| "private" (. m.Add(Modifier.Private, t.Location); .)
| "protected" (. m.Add(Modifier.Protected, t.Location); .)
| "public" (. m.Add(Modifier.Public, t.Location); .)
| "readonly" (. m.Add(Modifier.ReadOnly, t.Location); .)
| "sealed" (. m.Add(Modifier.Sealed, t.Location); .)
| "static" (. m.Add(Modifier.Static, t.Location); .)
| "unsafe" (. m.Add(Modifier.Unsafe, t.Location); .)
| "virtual" (. m.Add(Modifier.Virtual, t.Location); .)
| "volatile" (. m.Add(Modifier.Volatile, t.Location); .)
"abstract" (. m.Add(Modifiers.Abstract, t.Location); .)
| "extern" (. m.Add(Modifiers.Extern, t.Location); .)
| "internal" (. m.Add(Modifiers.Internal, t.Location); .)
| "new" (. m.Add(Modifiers.New, t.Location); .)
| "override" (. m.Add(Modifiers.Override, t.Location); .)
| "private" (. m.Add(Modifiers.Private, t.Location); .)
| "protected" (. m.Add(Modifiers.Protected, t.Location); .)
| "public" (. m.Add(Modifiers.Public, t.Location); .)
| "readonly" (. m.Add(Modifiers.ReadOnly, t.Location); .)
| "sealed" (. m.Add(Modifiers.Sealed, t.Location); .)
| "static" (. m.Add(Modifiers.Static, t.Location); .)
| "unsafe" (. m.Add(Modifiers.Unsafe, t.Location); .)
| "virtual" (. m.Add(Modifiers.Virtual, t.Location); .)
| "volatile" (. m.Add(Modifiers.Volatile, t.Location); .)
| ( IF(la.kind == Tokens.Identifier && la.val == "partial")
ident (. m.Add(Modifier.Partial, t.Location); .)
ident (. m.Add(Modifiers.Partial, t.Location); .)
)
}
.
StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
StructMemberDecl<ModifierList m, List<AttributeSection> attributes>
(.
string qualident = null;
TypeReference type;
@ -706,9 +706,9 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -706,9 +706,9 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
TypeReference explicitInterface = null;
.)
=
/*--- constant declaration: */ (. m.Check(Modifier.Constants); .)
/*--- constant declaration: */ (. m.Check(Modifiers.Constants); .)
"const" (.Location startPos = t.Location; .)
Type<out type> ident (. FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier | Modifier.Const);
Type<out type> ident (. FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier | Modifiers.Const);
fd.StartLocation = m.GetDeclarationLocation(startPos);
VariableDeclaration f = new VariableDeclaration(t.val);
fd.Fields.Add(f);
@ -722,7 +722,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -722,7 +722,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
| /*--- void method (procedure) declaration: */
IF (NotVoidPointer()) (. m.Check(Modifier.PropertysEventsMethods); .)
IF (NotVoidPointer()) (. m.Check(Modifiers.PropertysEventsMethods); .)
"void" (. Location startPos = t.Location; .)
( IF (IsExplicitInterfaceImplementation())
TypeName<out explicitInterface, false>
@ -757,7 +757,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -757,7 +757,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
methodDeclaration.Body = (BlockStatement)stmt;
.)
| /*--- event declaration: */ (. m.Check(Modifier.PropertysEventsMethods); .)
| /*--- event declaration: */ (. m.Check(Modifiers.PropertysEventsMethods); .)
"event" (. EventDeclaration eventDecl = new EventDeclaration(null, null, m.Modifier, attributes, null);
eventDecl.StartLocation = t.Location;
compilationUnit.AddChild(eventDecl);
@ -785,12 +785,12 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -785,12 +785,12 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
.)
| /*--- constructor or static contructor declaration: */
IF (IdentAndLPar()) (. m.Check(Modifier.Constructors | Modifier.StaticConstructors); .)
ident (. string name = t.val; Location startPos = t.Location; .) "(" [ (. m.Check(Modifier.Constructors); .)
IF (IdentAndLPar()) (. m.Check(Modifiers.Constructors | Modifiers.StaticConstructors); .)
ident (. string name = t.val; Location startPos = t.Location; .) "(" [ (. m.Check(Modifiers.Constructors); .)
FormalParameterList<p>
]
")" (.ConstructorInitializer init = null; .)
[ (. m.Check(Modifier.Constructors); .)
[ (. m.Check(Modifiers.Constructors); .)
ConstructorInitializer<out init>
] (.
ConstructorDeclaration cd = new ConstructorDeclaration(name, m.Modifier, p, init, attributes);
@ -801,7 +801,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -801,7 +801,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
( Block<out stmt> | ";" ) (. cd.Body = (BlockStatement)stmt; compilationUnit.AddChild(cd); .)
| /*--- conversion operator declaration: */ (. m.Check(Modifier.Operators);
| /*--- conversion operator declaration: */ (. m.Check(Modifiers.Operators);
if (m.isNone) Error("at least one modifier must be set");
bool isImplicit = true;
Location startPos = Location.Empty;
@ -834,7 +834,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -834,7 +834,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
| Type<out type> (. Location startPos = t.Location; .)
(
/*--- operator declaration: */ (. OverloadableOperatorType op;
m.Check(Modifier.Operators);
m.Check(Modifiers.Operators);
if (m.isNone) Error("at least one modifier must be set");
.)
"operator" OverloadableOperator<out op> (. TypeReference firstType, secondType = null; string secondName = null; .)
@ -867,7 +867,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -867,7 +867,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
.)
/*--- field declaration: */
| IF (IsVarDecl()) (. m.Check(Modifier.Fields);
| IF (IsVarDecl()) (. m.Check(Modifiers.Fields);
FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier);
fd.StartLocation = m.GetDeclarationLocation(startPos);
.)
@ -876,7 +876,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -876,7 +876,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
";" (. fd.EndLocation = t.EndLocation; fd.Fields = variableDeclarators; compilationUnit.AddChild(fd); .)
/*--- unqualified indexer declaration (without interface name): */
| (. m.Check(Modifier.Indexers); .)
| (. m.Check(Modifiers.Indexers); .)
"this" "[" FormalParameterList<p> "]" (. Location endLocation = t.EndLocation; .) "{" (.
IndexerDeclaration indexer = new IndexerDeclaration(type, p, m.Modifier, attributes);
indexer.StartLocation = startPos;
@ -903,7 +903,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -903,7 +903,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
(
/*--- "not void" method (function) declaration: */
( (. m.Check(Modifier.PropertysEventsMethods); .)
( (. m.Check(Modifiers.PropertysEventsMethods); .)
/* .NET 2.0 */
[ TypeParameterList<templates> ]
"(" [ FormalParameterList<p> ] ")" (.
@ -942,7 +942,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -942,7 +942,7 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
)
/*--- qualified indexer declaration (with interface name): */
| (. m.Check(Modifier.Indexers); .)
| (. m.Check(Modifiers.Indexers); .)
"." "this" "[" FormalParameterList<p> "]" (.
IndexerDeclaration indexer = new IndexerDeclaration(type, p, m.Modifier, attributes);
indexer.StartLocation = m.GetDeclarationLocation(startPos);
@ -964,11 +964,11 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -964,11 +964,11 @@ StructMemberDecl<Modifiers m, List<AttributeSection> attributes>
)
.
ClassMemberDecl<Modifiers m, List<AttributeSection> attributes>
ClassMemberDecl<ModifierList m, List<AttributeSection> attributes>
(. Statement stmt = null; .)
=
StructMemberDecl<m, attributes>
| /*--- destructor declaration: */ (. m.Check(Modifier.Destructors); Location startPos = t.Location; .)
| /*--- destructor declaration: */ (. m.Check(Modifiers.Destructors); Location startPos = t.Location; .)
"~" ident (. DestructorDeclaration d = new DestructorDeclaration(t.val, m.Modifier, attributes);
d.Modifier = m.Modifier;
d.StartLocation = m.GetDeclarationLocation(startPos);
@ -984,7 +984,7 @@ InterfaceMemberDecl @@ -984,7 +984,7 @@ InterfaceMemberDecl
TypeReference type;
AttributeSection section;
Modifier mod = Modifier.None;
Modifiers mod = Modifiers.None;
List<AttributeSection> attributes = new List<AttributeSection>();
List<ParameterDeclarationExpression> parameters = new List<ParameterDeclarationExpression>();
string name;
@ -995,7 +995,7 @@ InterfaceMemberDecl @@ -995,7 +995,7 @@ InterfaceMemberDecl
.)
=
{ AttributeSection<out section> (. attributes.Add(section); .)}
[ "new" (. mod = Modifier.New; startLocation = t.Location; .) ]
[ "new" (. mod = Modifiers.New; startLocation = t.Location; .) ]
(
/*--- interface void method (procedure) declaration: */
IF (NotVoidPointer()) "void" (. if (startLocation.X == -1) startLocation = t.Location; .) ident (. name = t.val; .)
@ -1067,7 +1067,7 @@ AccessorDecls<out PropertyGetRegion getBlock, out PropertySetRegion setBlock> @@ -1067,7 +1067,7 @@ AccessorDecls<out PropertyGetRegion getBlock, out PropertySetRegion setBlock>
AttributeSection section;
getBlock = null;
setBlock = null;
Modifiers modifiers = null;
ModifierList modifiers = null;
.)
=
{ AttributeSection<out section> (. attributes.Add(section); .) }
@ -1354,7 +1354,7 @@ Statement @@ -1354,7 +1354,7 @@ Statement
IF (IsLabel()) ident (. compilationUnit.AddChild(new LabelStatement(t.val)); .)
":" Statement
/*--- local constant declaration: */
| "const" Type<out type> (. LocalVariableDeclaration var = new LocalVariableDeclaration(type, Modifier.Const); string ident = null; var.StartLocation = t.Location; .)
| "const" Type<out type> (. LocalVariableDeclaration var = new LocalVariableDeclaration(type, Modifiers.Const); string ident = null; var.StartLocation = t.Location; .)
ident (. ident = t.val; .)
"=" Expr<out expr> (. var.Variables.Add(new VariableDeclaration(ident, expr)); .)
{ "," ident (. ident = t.val; .) "=" Expr<out expr> (. var.Variables.Add(new VariableDeclaration(ident, expr)); .) }

42
src/Libraries/NRefactory/Project/Src/Parser/Modifiers.cs → src/Libraries/NRefactory/Project/Src/Parser/ModifierList.cs

@ -9,12 +9,12 @@ using ICSharpCode.NRefactory.Ast; @@ -9,12 +9,12 @@ using ICSharpCode.NRefactory.Ast;
namespace ICSharpCode.NRefactory.Parser
{
internal class Modifiers
internal class ModifierList
{
Modifier cur;
Modifiers cur;
Location location = new Location(-1, -1);
public Modifier Modifier {
public Modifiers Modifier {
get {
return cur;
}
@ -28,23 +28,23 @@ namespace ICSharpCode.NRefactory.Parser @@ -28,23 +28,23 @@ namespace ICSharpCode.NRefactory.Parser
return location;
}
public Location Location {
get {
return location;
}
set {
location = value;
}
}
// public Location Location {
// get {
// return location;
// }
// set {
// location = value;
// }
// }
public bool isNone { get { return cur == Modifier.None; } }
public bool isNone { get { return cur == Modifiers.None; } }
public bool Contains(Modifier m)
public bool Contains(Modifiers m)
{
return ((cur & m) != 0);
}
public void Add(Modifier m, Location tokenLocation)
public void Add(Modifiers m, Location tokenLocation)
{
if(location.X == -1 && location.Y == -1) {
location = tokenLocation;
@ -57,15 +57,15 @@ namespace ICSharpCode.NRefactory.Parser @@ -57,15 +57,15 @@ namespace ICSharpCode.NRefactory.Parser
}
}
public void Add(Modifiers m)
{
Add(m.cur, m.Location);
}
// public void Add(Modifiers m)
// {
// Add(m.cur, m.Location);
// }
public void Check(Modifier allowed)
public void Check(Modifiers allowed)
{
Modifier wrong = cur & ~allowed;
if (wrong != Modifier.None) {
Modifiers wrong = cur & ~allowed;
if (wrong != Modifiers.None) {
// parser.Error("modifier(s) " + wrong + " not allowed here");
}
}

20
src/Libraries/NRefactory/Project/Src/Parser/VBNet/ParamModifier.cs → src/Libraries/NRefactory/Project/Src/Parser/VBNet/ParamModifierList.cs

@ -9,26 +9,26 @@ using ICSharpCode.NRefactory.Ast; @@ -9,26 +9,26 @@ using ICSharpCode.NRefactory.Ast;
namespace ICSharpCode.NRefactory.Parser.VB
{
internal class ParamModifiers
internal class ParamModifierList
{
ParamModifier cur;
ParameterModifiers cur;
Parser parser;
public ParamModifier Modifier {
public ParameterModifiers Modifier {
get {
return cur;
}
}
public ParamModifiers(Parser parser)
public ParamModifierList(Parser parser)
{
this.parser = parser;
cur = ParamModifier.None;
cur = ParameterModifiers.None;
}
public bool isNone { get { return cur == ParamModifier.None; } }
public bool isNone { get { return cur == ParameterModifiers.None; } }
public void Add(ParamModifier m)
public void Add(ParameterModifiers m)
{
if ((cur & m) == 0) {
cur |= m;
@ -37,15 +37,15 @@ namespace ICSharpCode.NRefactory.Parser.VB @@ -37,15 +37,15 @@ namespace ICSharpCode.NRefactory.Parser.VB
}
}
public void Add(ParamModifiers m)
public void Add(ParamModifierList m)
{
Add(m.cur);
}
public void Check()
{
if((cur & ParamModifier.In) != 0 &&
(cur & ParamModifier.Ref) != 0) {
if((cur & ParameterModifiers.In) != 0 &&
(cur & ParameterModifiers.Ref) != 0) {
parser.Error("ByRef and ByVal are not allowed at the same time.");
}
}

1546
src/Libraries/NRefactory/Project/Src/Parser/VBNet/Parser.cs

File diff suppressed because it is too large Load Diff

172
src/Libraries/NRefactory/Project/Src/Parser/VBNet/VBNET.ATG

@ -318,7 +318,7 @@ ImportClause<out Using u> @@ -318,7 +318,7 @@ ImportClause<out Using u>
/* 6.4.2 */
NamespaceMemberDecl
(.
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
AttributeSection section;
List<AttributeSection> attributes = new List<AttributeSection>();
string qualident;
@ -393,12 +393,12 @@ TypeParameterConstraints<TemplateDefinition template> @@ -393,12 +393,12 @@ TypeParameterConstraints<TemplateDefinition template>
.
/* 6.4.2 */
NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes>
NonModuleDeclaration<ModifierList m, List<AttributeSection> attributes>
(.
TypeReference typeRef = null;
List<TypeReference> baseInterfaces = null;
.) =
(. m.Check(Modifier.Classes); .)
(. m.Check(Modifiers.Classes); .)
/* Spec, 7.5 */
"Class"
(. TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
@ -420,7 +420,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes> @@ -420,7 +420,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes>
.)
| "Module"
(.
m.Check(Modifier.VBModules);
m.Check(Modifiers.VBModules);
TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
compilationUnit.AddChild(newType);
compilationUnit.BlockStart(newType);
@ -436,7 +436,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes> @@ -436,7 +436,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes>
.)
| "Structure"
(.
m.Check(Modifier.VBStructures);
m.Check(Modifiers.VBStructures);
TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
compilationUnit.AddChild(newType);
compilationUnit.BlockStart(newType);
@ -455,7 +455,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes> @@ -455,7 +455,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes>
| /* 7.4 */
"Enum"
(.
m.Check(Modifier.VBEnums);
m.Check(Modifiers.VBEnums);
TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
newType.StartLocation = m.GetDeclarationLocation(t.Location);
compilationUnit.AddChild(newType);
@ -474,7 +474,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes> @@ -474,7 +474,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes>
| /* 7.8 */
"Interface"
(.
m.Check(Modifier.VBInterfacs);
m.Check(Modifiers.VBInterfacs);
TypeDeclaration newType = new TypeDeclaration(m.Modifier, attributes);
newType.StartLocation = m.GetDeclarationLocation(t.Location);
compilationUnit.AddChild(newType);
@ -493,7 +493,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes> @@ -493,7 +493,7 @@ NonModuleDeclaration<Modifiers m, List<AttributeSection> attributes>
| /* 7.10 */
"Delegate"
(.
m.Check(Modifier.VBDelegates);
m.Check(Modifiers.VBDelegates);
DelegateDeclaration delegateDeclr = new DelegateDeclaration(m.Modifier, attributes);
delegateDeclr.ReturnType = new TypeReference("", "System.Void");
delegateDeclr.StartLocation = m.GetDeclarationLocation(t.Location);
@ -526,7 +526,7 @@ ClassBody<TypeDeclaration newType> @@ -526,7 +526,7 @@ ClassBody<TypeDeclaration newType>
(. AttributeSection section; .) =
{
(.List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
.)
{ AttributeSection<out section> (. attributes.Add(section); .) }
{ MemberModifier<m> }
@ -540,7 +540,7 @@ StructureBody<TypeDeclaration newType> @@ -540,7 +540,7 @@ StructureBody<TypeDeclaration newType>
(. AttributeSection section; .) =
{
(.List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
.)
{ AttributeSection<out section> (. attributes.Add(section); .) }
{ MemberModifier<m> }
@ -555,7 +555,7 @@ ModuleBody<TypeDeclaration newType> @@ -555,7 +555,7 @@ ModuleBody<TypeDeclaration newType>
(. AttributeSection section; .) =
{
(.List<AttributeSection> attributes = new List<AttributeSection>();
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
.)
{ AttributeSection<out section> (. attributes.Add(section); .) }
{ MemberModifier<m> }
@ -588,7 +588,7 @@ InterfaceMemberDecl @@ -588,7 +588,7 @@ InterfaceMemberDecl
List<ParameterDeclarationExpression> p = new List<ParameterDeclarationExpression>();
List<TemplateDefinition> templates = new List<TemplateDefinition>();
AttributeSection section, returnTypeAttributeSection = null;
Modifiers mod = new Modifiers();
ModifierList mod = new ModifierList();
List<AttributeSection> attributes = new List<AttributeSection>();
string name;
.) =
@ -598,7 +598,7 @@ InterfaceMemberDecl @@ -598,7 +598,7 @@ InterfaceMemberDecl
{ MemberModifier<mod> }
(
"Event"
(. mod.Check(Modifier.VBInterfaceEvents); .)
(. mod.Check(Modifiers.VBInterfaceEvents); .)
Identifier (. name = t.val; .)
[ "(" [ FormalParameterList<p> ] ")" ]
[ "As" TypeName<out type> ]
@ -610,7 +610,7 @@ InterfaceMemberDecl @@ -610,7 +610,7 @@ InterfaceMemberDecl
.)
|
"Sub"
(. mod.Check(Modifier.VBInterfaceMethods); .)
(. mod.Check(Modifiers.VBInterfaceMethods); .)
Identifier (. name = t.val; .)
TypeParameterList<templates>
[ "(" [ FormalParameterList<p> ] ")" ]
@ -624,7 +624,7 @@ InterfaceMemberDecl @@ -624,7 +624,7 @@ InterfaceMemberDecl
.)
|
"Function"
(. mod.Check(Modifier.VBInterfaceMethods); .)
(. mod.Check(Modifiers.VBInterfaceMethods); .)
Identifier (. name = t.val; .)
TypeParameterList<templates>
[ "(" [ FormalParameterList<p> ] ")" ]
@ -645,7 +645,7 @@ InterfaceMemberDecl @@ -645,7 +645,7 @@ InterfaceMemberDecl
EOL
|
"Property"
(. mod.Check(Modifier.VBInterfaceProperties); .)
(. mod.Check(Modifiers.VBInterfaceProperties); .)
Identifier (. name = t.val; .)
[ "(" [ FormalParameterList<p> ] ")" ]
[ "As" TypeName<out type> ]
@ -685,7 +685,7 @@ EnumMemberDecl<out FieldDeclaration f> @@ -685,7 +685,7 @@ EnumMemberDecl<out FieldDeclaration f>
EOL
.
ClassMemberDecl<Modifiers m, List<AttributeSection> attributes> =
ClassMemberDecl<ModifierList m, List<AttributeSection> attributes> =
StructureMemberDecl<m, attributes>
.
@ -699,7 +699,7 @@ ClassBaseType<out TypeReference typeRef> @@ -699,7 +699,7 @@ ClassBaseType<out TypeReference typeRef>
.
/* 7.6.1 */
StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
StructureMemberDecl<ModifierList m, List<AttributeSection> attributes>
(.
TypeReference type = null;
List<ParameterDeclarationExpression> p = new List<ParameterDeclarationExpression>();
@ -723,7 +723,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -723,7 +723,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
Identifier
(.
name = t.val;
m.Check(Modifier.VBMethods);
m.Check(Modifiers.VBMethods);
.)
TypeParameterList<templates>
[ "(" [ FormalParameterList<p> ] ")" ]
@ -780,7 +780,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -780,7 +780,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
)
/* 9.3 */
| "New" [ "(" [ FormalParameterList<p> ] ")" ]
(. m.Check(Modifier.Constructors); .)
(. m.Check(Modifiers.Constructors); .)
(. Location constructorEndLocation = t.EndLocation; .)
EOL
@ -808,7 +808,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -808,7 +808,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
/* 9.2.1 */
"Function"
(.
m.Check(Modifier.VBMethods);
m.Check(Modifiers.VBMethods);
string name = String.Empty;
Location startPos = t.Location;
MethodDeclaration methodDeclaration;List<string> handlesClause = null;
@ -883,7 +883,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -883,7 +883,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
/* 9.2.2. */
"Declare"
(.
m.Check(Modifier.VBExternalMethods);
m.Check(Modifiers.VBExternalMethods);
Location startPos = t.Location;
CharsetModifier charsetModifer = CharsetModifier.None;
string library = String.Empty;
@ -923,7 +923,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -923,7 +923,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
/* 9. 4 */
"Event"
(.
m.Check(Modifier.VBEvents);
m.Check(Modifiers.VBEvents);
Location startPos = t.Location;
EventDeclaration eventDeclaration;
string name = String.Empty;
@ -946,7 +946,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -946,7 +946,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
| /* 9.6 */
(. Location startPos = t.Location; .)
(.
m.Check(Modifier.Fields);
m.Check(Modifiers.Fields);
FieldDeclaration fd = new FieldDeclaration(attributes, null, m.Modifier);
fd.StartLocation = m.GetDeclarationLocation(startPos);
.)
@ -960,8 +960,8 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -960,8 +960,8 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
compilationUnit.AddChild(fd);
.)
| /* 9.4 */
(. m.Check(Modifier.Fields); .)
"Const" (. m.Add(Modifier.Const, t.Location); .)
(. m.Check(Modifiers.Fields); .)
"Const" (. m.Add(Modifiers.Const, t.Location); .)
(.
FieldDeclaration fd = new FieldDeclaration(attributes, type, m.Modifier);
fd.StartLocation = m.GetDeclarationLocation(t.Location);
@ -981,7 +981,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -981,7 +981,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
| /* 9.7 */
"Property"
(.
m.Check(Modifier.VBProperties);
m.Check(Modifiers.VBProperties);
Location startPos = t.Location;
List<InterfaceImplementation> implementsClause = null;
.)
@ -1032,7 +1032,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -1032,7 +1032,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
|
"Custom" (. Location startPos = t.Location; .) "Event"
(.
m.Check(Modifier.VBCustomEvents);
m.Check(Modifiers.VBCustomEvents);
EventAddRemoveRegion eventAccessorDeclaration;
EventAddRegion addHandlerAccessorDeclaration = null;
EventRemoveRegion removeHandlerAccessorDeclaration = null;
@ -1090,7 +1090,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -1090,7 +1090,7 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
| "Narrowing" (. opConversionType = ConversionType.Explicit;.) ]
"Operator"
(.
m.Check(Modifier.VBOperators);
m.Check(Modifiers.VBOperators);
Location startPos = t.Location;
TypeReference returnType = NullTypeReference.Instance;
TypeReference operandType = NullTypeReference.Instance;
@ -1103,13 +1103,13 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes> @@ -1103,13 +1103,13 @@ StructureMemberDecl<Modifiers m, List<AttributeSection> attributes>
OverloadableOperator<out operatorType>
"(" [ "ByVal" ] Identifier (. operandName = t.val; .)
[ "As" TypeName<out operandType> ]
(. parameters.Add(new ParameterDeclarationExpression(operandType, operandName, ParamModifier.In)); .)
(. parameters.Add(new ParameterDeclarationExpression(operandType, operandName, ParameterModifiers.In)); .)
{
","
[ "ByVal" ] Identifier (. operandName = t.val; .)
[ "As" TypeName<out operandType> ]
(. parameters.Add(new ParameterDeclarationExpression(operandType, operandName, ParamModifier.In)); .)
(. parameters.Add(new ParameterDeclarationExpression(operandType, operandName, ParameterModifiers.In)); .)
}
")"
(. Location endPos = t.EndLocation; .)
@ -1255,7 +1255,7 @@ AccessorDecls<out PropertyGetRegion getBlock, out PropertySetRegion setBlock> @@ -1255,7 +1255,7 @@ AccessorDecls<out PropertyGetRegion getBlock, out PropertySetRegion setBlock>
/* 9.7.1 */
GetAccessorDecl<out PropertyGetRegion getBlock, List<AttributeSection> attributes>
(. Statement stmt = null; Modifier m; .)
(. Statement stmt = null; Modifiers m; .)
=
PropertyAccessorAccessModifier<out m>
"Get"
@ -1274,7 +1274,7 @@ SetAccessorDecl<out PropertySetRegion setBlock, List<AttributeSection> attribute @@ -1274,7 +1274,7 @@ SetAccessorDecl<out PropertySetRegion setBlock, List<AttributeSection> attribute
(.
Statement stmt = null;
List<ParameterDeclarationExpression> p = new List<ParameterDeclarationExpression>();
Modifier m;
Modifiers m;
.)
=
PropertyAccessorAccessModifier<out m>
@ -1338,12 +1338,14 @@ VariableDeclaratorPartAfterIdentifier<List<VariableDeclaration> fieldDeclaration @@ -1338,12 +1338,14 @@ VariableDeclaratorPartAfterIdentifier<List<VariableDeclaration> fieldDeclaration
|
[ "As" TypeName<out type>
(.
for (int i = fieldDeclaration.Count - 1; i >= 0; i--) {
VariableDeclaration vd = fieldDeclaration[i];
if (vd.TypeReference.Type.Length > 0) break;
TypeReference newType = type.Clone();
newType.RankSpecifier = vd.TypeReference.RankSpecifier;
vd.TypeReference = newType;
if (type != null) {
for (int i = fieldDeclaration.Count - 1; i >= 0; i--) {
VariableDeclaration vd = fieldDeclaration[i];
if (vd.TypeReference.Type.Length > 0) break;
TypeReference newType = type.Clone();
newType.RankSpecifier = vd.TypeReference.RankSpecifier;
vd.TypeReference = newType;
}
}
.)
]
@ -2112,7 +2114,7 @@ FormalParameterList<List<ParameterDeclarationExpression> parameter> @@ -2112,7 +2114,7 @@ FormalParameterList<List<ParameterDeclarationExpression> parameter>
FormalParameter<out ParameterDeclarationExpression p>
(.
TypeReference type = null;
ParamModifiers mod = new ParamModifiers(this);
ParamModifierList mod = new ParamModifierList(this);
Expression expr = null;
p = null;ArrayList arrayModifiers = null;
.) =
@ -2187,18 +2189,18 @@ Statement @@ -2187,18 +2189,18 @@ Statement
/* 10.2 */
LocalDeclarationStatement<out Statement statement>
(.
Modifiers m = new Modifiers();
ModifierList m = new ModifierList();
LocalVariableDeclaration localVariableDeclaration;
bool dimfound = false;
.) =
/* this differs from the spec: dim static x compiles with vbc. */
{
"Const" (. m.Add(Modifier.Const, t.Location); .)
| "Static" (. m.Add(Modifier.Static, t.Location); .)
"Const" (. m.Add(Modifiers.Const, t.Location); .)
| "Static" (. m.Add(Modifiers.Static, t.Location); .)
| "Dim" (. dimfound = true; .)
}
(.
if(dimfound && (m.Modifier & Modifier.Const) != 0) {
if(dimfound && (m.Modifier & Modifiers.Const) != 0) {
Error("Dim is not allowed on constants.");
}
@ -2468,7 +2470,7 @@ EmbeddedStatement<out Statement statement> @@ -2468,7 +2470,7 @@ EmbeddedStatement<out Statement statement>
| "Using"
(. Statement block; .)
( IF (Peek(1).kind == Tokens.As)
(. LocalVariableDeclaration resourceAquisition = new LocalVariableDeclaration(Modifier.None); .)
(. LocalVariableDeclaration resourceAquisition = new LocalVariableDeclaration(Modifiers.None); .)
VariableDeclarator<resourceAquisition.Variables>
{ ","
VariableDeclarator<resourceAquisition.Variables>
@ -2766,53 +2768,53 @@ PrimitiveTypeName<out string type> @@ -2766,53 +2768,53 @@ PrimitiveTypeName<out string type>
| "SByte" (. type = "SByte"; .)
.
ParameterModifier<ParamModifiers m>
= "ByVal" (. m.Add(ParamModifier.In); .)
| "ByRef" (. m.Add(ParamModifier.Ref); .)
| "Optional" (. m.Add(ParamModifier.Optional); .)
| "ParamArray" (. m.Add(ParamModifier.Params); .)
ParameterModifier<ParamModifierList m>
= "ByVal" (. m.Add(ParameterModifiers.In); .)
| "ByRef" (. m.Add(ParameterModifiers.Ref); .)
| "Optional" (. m.Add(ParameterModifiers.Optional); .)
| "ParamArray" (. m.Add(ParameterModifiers.Params); .)
.
TypeModifier<Modifiers m>
= "Public" (. m.Add(Modifier.Public, t.Location); .)
| "Protected" (. m.Add(Modifier.Protected, t.Location); .)
| "Friend" (. m.Add(Modifier.Internal, t.Location); .)
| "Private" (. m.Add(Modifier.Private, t.Location); .)
| "Shared" (. m.Add(Modifier.Static, t.Location); .)
| "Shadows" (. m.Add(Modifier.New, t.Location); .)
| "MustInherit" (. m.Add(Modifier.Abstract, t.Location); .)
| "NotInheritable" (. m.Add(Modifier.Sealed, t.Location); .)
| "Partial" (. m.Add(Modifier.Partial, t.Location); .)
TypeModifier<ModifierList m>
= "Public" (. m.Add(Modifiers.Public, t.Location); .)
| "Protected" (. m.Add(Modifiers.Protected, t.Location); .)
| "Friend" (. m.Add(Modifiers.Internal, t.Location); .)
| "Private" (. m.Add(Modifiers.Private, t.Location); .)
| "Shared" (. m.Add(Modifiers.Static, t.Location); .)
| "Shadows" (. m.Add(Modifiers.New, t.Location); .)
| "MustInherit" (. m.Add(Modifiers.Abstract, t.Location); .)
| "NotInheritable" (. m.Add(Modifiers.Sealed, t.Location); .)
| "Partial" (. m.Add(Modifiers.Partial, t.Location); .)
.
MemberModifier<Modifiers m> =
"MustInherit" (.m.Add(Modifier.Abstract, t.Location);.)
| "Default" (.m.Add(Modifier.Default, t.Location);.)
| "Friend" (.m.Add(Modifier.Internal, t.Location);.)
| "Shadows" (.m.Add(Modifier.New, t.Location);.)
| "Overrides" (.m.Add(Modifier.Override, t.Location);.)
| "MustOverride" (.m.Add(Modifier.Abstract, t.Location);.)
| "Private" (.m.Add(Modifier.Private, t.Location);.)
| "Protected" (.m.Add(Modifier.Protected, t.Location);.)
| "Public" (.m.Add(Modifier.Public, t.Location);.)
| "NotInheritable" (.m.Add(Modifier.Sealed, t.Location);.)
| "NotOverridable" (.m.Add(Modifier.Sealed, t.Location);.)
| "Shared" (.m.Add(Modifier.Static, t.Location);.)
| "Overridable" (.m.Add(Modifier.Virtual, t.Location);.)
| "Overloads" (.m.Add(Modifier.Overloads, t.Location);.)
| "ReadOnly" (.m.Add(Modifier.ReadOnly, t.Location);.)
| "WriteOnly" (.m.Add(Modifier.WriteOnly, t.Location);.)
| "WithEvents" (.m.Add(Modifier.WithEvents, t.Location);.)
| "Dim" (.m.Add(Modifier.Dim, t.Location);.)
MemberModifier<ModifierList m> =
"MustInherit" (.m.Add(Modifiers.Abstract, t.Location);.)
| "Default" (.m.Add(Modifiers.Default, t.Location);.)
| "Friend" (.m.Add(Modifiers.Internal, t.Location);.)
| "Shadows" (.m.Add(Modifiers.New, t.Location);.)
| "Overrides" (.m.Add(Modifiers.Override, t.Location);.)
| "MustOverride" (.m.Add(Modifiers.Abstract, t.Location);.)
| "Private" (.m.Add(Modifiers.Private, t.Location);.)
| "Protected" (.m.Add(Modifiers.Protected, t.Location);.)
| "Public" (.m.Add(Modifiers.Public, t.Location);.)
| "NotInheritable" (.m.Add(Modifiers.Sealed, t.Location);.)
| "NotOverridable" (.m.Add(Modifiers.Sealed, t.Location);.)
| "Shared" (.m.Add(Modifiers.Static, t.Location);.)
| "Overridable" (.m.Add(Modifiers.Virtual, t.Location);.)
| "Overloads" (.m.Add(Modifiers.Overloads, t.Location);.)
| "ReadOnly" (.m.Add(Modifiers.ReadOnly, t.Location);.)
| "WriteOnly" (.m.Add(Modifiers.WriteOnly, t.Location);.)
| "WithEvents" (.m.Add(Modifiers.WithEvents, t.Location);.)
| "Dim" (.m.Add(Modifiers.Dim, t.Location);.)
.
PropertyAccessorAccessModifier<out Modifier m> =
(. m = Modifier.None; .)
PropertyAccessorAccessModifier<out Modifiers m> =
(. m = Modifiers.None; .)
{(
"Public" (. m |= Modifier.Public; .)
| "Protected" (. m |= Modifier.Protected; .)
| "Friend" (. m |= Modifier.Internal; .)
| "Private" (. m |= Modifier.Private; .)
"Public" (. m |= Modifiers.Public; .)
| "Protected" (. m |= Modifiers.Protected; .)
| "Friend" (. m |= Modifiers.Internal; .)
| "Private" (. m |= Modifiers.Private; .)
)}
.

6
src/Libraries/NRefactory/Project/Src/Parser/VBNet/VBNetParser.cs

@ -51,7 +51,7 @@ namespace ICSharpCode.NRefactory.Parser.VB @@ -51,7 +51,7 @@ namespace ICSharpCode.NRefactory.Parser.VB
public void Error(string s)
{
if (errDist >= minErrDist) {
if (errDist >= MinErrDist) {
errors.Error(la.line, la.col, s);
}
errDist = 0;
@ -177,9 +177,9 @@ namespace ICSharpCode.NRefactory.Parser.VB @@ -177,9 +177,9 @@ namespace ICSharpCode.NRefactory.Parser.VB
return la.kind == Tokens.Colon && Peek(1).kind == Tokens.EOL;
}
static bool IsMustOverride(Modifiers m)
static bool IsMustOverride(ModifierList m)
{
return m.Contains(Modifier.Abstract);
return m.Contains(Modifiers.Abstract);
}
TypeReferenceExpression GetTypeReferenceExpression(Expression expr, List<TypeReference> genericTypes)

4
src/Libraries/NRefactory/Project/Src/ParserFactory.cs

@ -18,9 +18,9 @@ namespace ICSharpCode.NRefactory @@ -18,9 +18,9 @@ namespace ICSharpCode.NRefactory
}
/// <summary>
/// Description of IParser.
/// Static helper class that constructs lexer and parser objects.
/// </summary>
public class ParserFactory
public static class ParserFactory
{
public static Parser.ILexer CreateLexer(SupportedLanguage language, TextReader textReader)
{

70
src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/CSharpOutputVisitor.cs

@ -181,11 +181,11 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -181,11 +181,11 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
}
}
public object VisitInnerClassTypeReference(InnerClassTypeReference typeReference, object data)
public object VisitInnerClassTypeReference(InnerClassTypeReference innerClassTypeReference, object data)
{
nodeTracker.TrackedVisit(typeReference.BaseType, data);
nodeTracker.TrackedVisit(innerClassTypeReference.BaseType, data);
outputFormatter.PrintToken(Tokens.Dot);
return VisitTypeReference((TypeReference)typeReference, data);
return VisitTypeReference((TypeReference)innerClassTypeReference, data);
}
#region Global scope
@ -216,7 +216,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -216,7 +216,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
if (this.prettyPrintOptions.SpacesWithinBrackets) {
outputFormatter.Space();
}
if (attributeSection.AttributeTarget != null && attributeSection.AttributeTarget != String.Empty) {
if (!string.IsNullOrEmpty(attributeSection.AttributeTarget)) {
outputFormatter.PrintText(attributeSection.AttributeTarget);
outputFormatter.PrintToken(Tokens.Colon);
outputFormatter.Space();
@ -267,19 +267,19 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -267,19 +267,19 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
return null;
}
public object VisitUsing(Using u, object data)
public object VisitUsing(Using @using, object data)
{
outputFormatter.Indent();
outputFormatter.PrintToken(Tokens.Using);
outputFormatter.Space();
outputFormatter.PrintIdentifier(u.Name);
outputFormatter.PrintIdentifier(@using.Name);
if (u.IsAlias) {
if (@using.IsAlias) {
outputFormatter.Space();
outputFormatter.PrintToken(Tokens.Assign);
outputFormatter.Space();
nodeTracker.TrackedVisit(u.Alias, data);
nodeTracker.TrackedVisit(@using.Alias, data);
}
outputFormatter.PrintToken(Tokens.Semicolon);
@ -302,7 +302,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -302,7 +302,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
outputFormatter.Space();
outputFormatter.PrintIdentifier(namespaceDeclaration.Name);
outputFormatter.BeginBrace(this.prettyPrintOptions.NameSpaceBraceStyle);
outputFormatter.BeginBrace(this.prettyPrintOptions.NamespaceBraceStyle);
nodeTracker.TrackedVisitChildren(namespaceDeclaration, data);
@ -502,7 +502,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -502,7 +502,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
{
VisitAttributes(propertyDeclaration.Attributes, data);
outputFormatter.Indent();
propertyDeclaration.Modifier &= ~Modifier.ReadOnly;
propertyDeclaration.Modifier &= ~Modifiers.ReadOnly;
OutputModifier(propertyDeclaration.Modifier);
nodeTracker.TrackedVisit(propertyDeclaration.TypeReference, data);
outputFormatter.Space();
@ -2181,7 +2181,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -2181,7 +2181,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
outputFormatter.PrintToken(Tokens.OpenParenthesis);
nodeTracker.TrackedVisit(castExpression.CastTo, data);
outputFormatter.PrintToken(Tokens.CloseParenthesis);
if (this.prettyPrintOptions.SpacesAfterTypeCast) {
if (this.prettyPrintOptions.SpacesAfterTypecast) {
outputFormatter.Space();
}
nodeTracker.TrackedVisit(castExpression.Expression, data);
@ -2339,25 +2339,25 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -2339,25 +2339,25 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
#endregion
#endregion
void OutputModifier(ParamModifier modifier)
void OutputModifier(ParameterModifiers modifier)
{
switch (modifier) {
case ParamModifier.None:
case ParamModifier.In:
case ParameterModifiers.None:
case ParameterModifiers.In:
break;
case ParamModifier.Out:
case ParameterModifiers.Out:
outputFormatter.PrintToken(Tokens.Out);
outputFormatter.Space();
break;
case ParamModifier.Params:
case ParameterModifiers.Params:
outputFormatter.PrintToken(Tokens.Params);
outputFormatter.Space();
break;
case ParamModifier.Ref:
case ParameterModifiers.Ref:
outputFormatter.PrintToken(Tokens.Ref);
outputFormatter.Space();
break;
case ParamModifier.Optional:
case ParameterModifiers.Optional:
errors.Error(-1, -1, String.Format("Optional parameters aren't supported in C#"));
break;
default:
@ -2366,57 +2366,57 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -2366,57 +2366,57 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
}
}
void OutputModifier(Modifier modifier)
void OutputModifier(Modifiers modifier)
{
ArrayList tokenList = new ArrayList();
if ((modifier & Modifier.Unsafe) != 0) {
if ((modifier & Modifiers.Unsafe) != 0) {
tokenList.Add(Tokens.Unsafe);
}
if ((modifier & Modifier.Public) != 0) {
if ((modifier & Modifiers.Public) != 0) {
tokenList.Add(Tokens.Public);
}
if ((modifier & Modifier.Private) != 0) {
if ((modifier & Modifiers.Private) != 0) {
tokenList.Add(Tokens.Private);
}
if ((modifier & Modifier.Protected) != 0) {
if ((modifier & Modifiers.Protected) != 0) {
tokenList.Add(Tokens.Protected);
}
if ((modifier & Modifier.Static) != 0) {
if ((modifier & Modifiers.Static) != 0) {
tokenList.Add(Tokens.Static);
}
if ((modifier & Modifier.Internal) != 0) {
if ((modifier & Modifiers.Internal) != 0) {
tokenList.Add(Tokens.Internal);
}
if ((modifier & Modifier.Override) != 0) {
if ((modifier & Modifiers.Override) != 0) {
tokenList.Add(Tokens.Override);
}
if ((modifier & Modifier.Abstract) != 0) {
if ((modifier & Modifiers.Abstract) != 0) {
tokenList.Add(Tokens.Abstract);
}
if ((modifier & Modifier.Virtual) != 0) {
if ((modifier & Modifiers.Virtual) != 0) {
tokenList.Add(Tokens.Virtual);
}
if ((modifier & Modifier.New) != 0) {
if ((modifier & Modifiers.New) != 0) {
tokenList.Add(Tokens.New);
}
if ((modifier & Modifier.Sealed) != 0) {
if ((modifier & Modifiers.Sealed) != 0) {
tokenList.Add(Tokens.Sealed);
}
if ((modifier & Modifier.Extern) != 0) {
if ((modifier & Modifiers.Extern) != 0) {
tokenList.Add(Tokens.Extern);
}
if ((modifier & Modifier.Const) != 0) {
if ((modifier & Modifiers.Const) != 0) {
tokenList.Add(Tokens.Const);
}
if ((modifier & Modifier.ReadOnly) != 0) {
if ((modifier & Modifiers.ReadOnly) != 0) {
tokenList.Add(Tokens.Readonly);
}
if ((modifier & Modifier.Volatile) != 0) {
if ((modifier & Modifiers.Volatile) != 0) {
tokenList.Add(Tokens.Volatile);
}
outputFormatter.PrintTokenList(tokenList);
if ((modifier & Modifier.Partial) != 0) {
if ((modifier & Modifiers.Partial) != 0) {
outputFormatter.PrintText("partial ");
}
}

16
src/Libraries/NRefactory/Project/Src/PrettyPrinter/CSharp/PrettyPrintOptions.cs

@ -27,7 +27,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -27,7 +27,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
public class PrettyPrintOptions : AbstractPrettyPrintOptions
{
#region BraceStyle
BraceStyle nameSpaceBraceStyle = BraceStyle.NextLine;
BraceStyle namespaceBraceStyle = BraceStyle.NextLine;
BraceStyle classBraceStyle = BraceStyle.NextLine;
BraceStyle interfaceBraceStyle = BraceStyle.NextLine;
BraceStyle structBraceStyle = BraceStyle.NextLine;
@ -55,12 +55,12 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -55,12 +55,12 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
}
}
public BraceStyle NameSpaceBraceStyle {
public BraceStyle NamespaceBraceStyle {
get {
return nameSpaceBraceStyle;
return namespaceBraceStyle;
}
set {
nameSpaceBraceStyle = value;
namespaceBraceStyle = value;
}
}
@ -468,7 +468,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -468,7 +468,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
bool spacesAfterComma = true;
bool spacesBeforeComma = false;
bool spacesAfterSemicolon = true;
bool spacesAfterTypeCast = false;
bool spacesAfterTypecast = false;
public bool SpacesAfterComma {
get {
@ -486,12 +486,12 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -486,12 +486,12 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
spacesAfterSemicolon = value;
}
}
public bool SpacesAfterTypeCast {
public bool SpacesAfterTypecast {
get {
return spacesAfterTypeCast;
return spacesAfterTypecast;
}
set {
spacesAfterTypeCast = value;
spacesAfterTypecast = value;
}
}
public bool SpacesBeforeComma {

8
src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputFormatter.cs

@ -42,17 +42,17 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -42,17 +42,17 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
}
}
public override void PrintComment(Comment comment, bool forceWriteInPreviousLine)
public override void PrintComment(Comment comment, bool forceWriteInPreviousBlock)
{
switch (comment.CommentType) {
case CommentType.Block:
WriteLineInPreviousLine("'" + comment.CommentText.Replace("\n", "\n'"), forceWriteInPreviousLine);
WriteLineInPreviousLine("'" + comment.CommentText.Replace("\n", "\n'"), forceWriteInPreviousBlock);
break;
case CommentType.Documentation:
WriteLineInPreviousLine("'''" + comment.CommentText, forceWriteInPreviousLine);
WriteLineInPreviousLine("'''" + comment.CommentText, forceWriteInPreviousBlock);
break;
default:
WriteLineInPreviousLine("'" + comment.CommentText, forceWriteInPreviousLine);
WriteLineInPreviousLine("'" + comment.CommentText, forceWriteInPreviousBlock);
break;
}
}

68
src/Libraries/NRefactory/Project/Src/PrettyPrinter/VBNet/VBNetOutputVisitor.cs

@ -223,7 +223,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -223,7 +223,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
return null;
}
public object VisitUsing(Using u, object data)
public object VisitUsing(Using @using, object data)
{
Debug.Fail("Should never be called. The usings should be handled in Visit(UsingDeclaration)");
return null;
@ -479,10 +479,10 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -479,10 +479,10 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
VisitAttributes(fieldDeclaration.Attributes, data);
outputFormatter.Indent();
if (fieldDeclaration.Modifier == Modifier.None) {
if (fieldDeclaration.Modifier == Modifiers.None) {
outputFormatter.PrintToken(Tokens.Private);
outputFormatter.Space();
} else if (fieldDeclaration.Modifier == Modifier.Dim) {
} else if (fieldDeclaration.Modifier == Modifiers.Dim) {
outputFormatter.PrintToken(Tokens.Dim);
outputFormatter.Space();
} else {
@ -535,7 +535,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -535,7 +535,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
outputFormatter.Indent();
OutputModifier(propertyDeclaration.Modifier);
if ((propertyDeclaration.Modifier & (Modifier.ReadOnly | Modifier.WriteOnly)) == Modifier.None) {
if ((propertyDeclaration.Modifier & (Modifiers.ReadOnly | Modifiers.WriteOnly)) == Modifiers.None) {
if (propertyDeclaration.IsReadOnly) {
outputFormatter.PrintToken(Tokens.ReadOnly);
outputFormatter.Space();
@ -851,7 +851,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -851,7 +851,7 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
bool IsAbstract(AttributedNode node)
{
if ((node.Modifier & Modifier.Abstract) == Modifier.Abstract)
if ((node.Modifier & Modifiers.Abstract) == Modifiers.Abstract)
return true;
return currentType != null && currentType.Type == ClassType.Interface;
}
@ -1315,11 +1315,11 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -1315,11 +1315,11 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
public object VisitLocalVariableDeclaration(LocalVariableDeclaration localVariableDeclaration, object data)
{
if (localVariableDeclaration.Modifier != Modifier.None) {
if (localVariableDeclaration.Modifier != Modifiers.None) {
OutputModifier(localVariableDeclaration.Modifier);
}
if (!isUsingResourceAcquisition) {
if ((localVariableDeclaration.Modifier & Modifier.Const) == 0) {
if ((localVariableDeclaration.Modifier & Modifiers.Const) == 0) {
outputFormatter.PrintToken(Tokens.Dim);
}
outputFormatter.Space();
@ -2531,24 +2531,24 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -2531,24 +2531,24 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
#endregion
void OutputModifier(ParamModifier modifier)
void OutputModifier(ParameterModifiers modifier)
{
switch (modifier) {
case ParamModifier.None:
case ParamModifier.In:
case ParameterModifiers.None:
case ParameterModifiers.In:
outputFormatter.PrintToken(Tokens.ByVal);
break;
case ParamModifier.Out:
case ParameterModifiers.Out:
errors.Error(-1, -1, String.Format("Out parameter converted to ByRef"));
outputFormatter.PrintToken(Tokens.ByRef);
break;
case ParamModifier.Params:
case ParameterModifiers.Params:
outputFormatter.PrintToken(Tokens.ParamArray);
break;
case ParamModifier.Ref:
case ParameterModifiers.Ref:
outputFormatter.PrintToken(Tokens.ByRef);
break;
case ParamModifier.Optional:
case ParameterModifiers.Optional:
outputFormatter.PrintToken(Tokens.Optional);
break;
default:
@ -2558,88 +2558,88 @@ namespace ICSharpCode.NRefactory.PrettyPrinter @@ -2558,88 +2558,88 @@ namespace ICSharpCode.NRefactory.PrettyPrinter
outputFormatter.Space();
}
void OutputModifier(Modifier modifier)
void OutputModifier(Modifiers modifier)
{
OutputModifier(modifier, false);
}
void OutputModifier(Modifier modifier, bool forTypeDecl)
void OutputModifier(Modifiers modifier, bool forTypeDecl)
{
if ((modifier & Modifier.Public) == Modifier.Public) {
if ((modifier & Modifiers.Public) == Modifiers.Public) {
outputFormatter.PrintToken(Tokens.Public);
outputFormatter.Space();
} else if ((modifier & Modifier.Private) == Modifier.Private) {
} else if ((modifier & Modifiers.Private) == Modifiers.Private) {
outputFormatter.PrintToken(Tokens.Private);
outputFormatter.Space();
} else if ((modifier & (Modifier.Protected | Modifier.Internal)) == (Modifier.Protected | Modifier.Internal)) {
} else if ((modifier & (Modifiers.Protected | Modifiers.Internal)) == (Modifiers.Protected | Modifiers.Internal)) {
outputFormatter.PrintToken(Tokens.Protected);
outputFormatter.Space();
outputFormatter.PrintToken(Tokens.Friend);
outputFormatter.Space();
} else if ((modifier & Modifier.Internal) == Modifier.Internal) {
} else if ((modifier & Modifiers.Internal) == Modifiers.Internal) {
outputFormatter.PrintToken(Tokens.Friend);
outputFormatter.Space();
} else if ((modifier & Modifier.Protected) == Modifier.Protected) {
} else if ((modifier & Modifiers.Protected) == Modifiers.Protected) {
outputFormatter.PrintToken(Tokens.Protected);
outputFormatter.Space();
}
if ((modifier & Modifier.Static) == Modifier.Static) {
if ((modifier & Modifiers.Static) == Modifiers.Static) {
outputFormatter.PrintToken(Tokens.Shared);
outputFormatter.Space();
}
if ((modifier & Modifier.Virtual) == Modifier.Virtual) {
if ((modifier & Modifiers.Virtual) == Modifiers.Virtual) {
outputFormatter.PrintToken(Tokens.Overridable);
outputFormatter.Space();
}
if ((modifier & Modifier.Abstract) == Modifier.Abstract) {
if ((modifier & Modifiers.Abstract) == Modifiers.Abstract) {
outputFormatter.PrintToken(forTypeDecl ? Tokens.MustInherit : Tokens.MustOverride);
outputFormatter.Space();
}
if ((modifier & Modifier.Override) == Modifier.Override) {
if ((modifier & Modifiers.Override) == Modifiers.Override) {
outputFormatter.PrintToken(Tokens.Overloads);
outputFormatter.Space();
outputFormatter.PrintToken(Tokens.Overrides);
outputFormatter.Space();
}
if ((modifier & Modifier.New) == Modifier.New) {
if ((modifier & Modifiers.New) == Modifiers.New) {
outputFormatter.PrintToken(Tokens.Shadows);
outputFormatter.Space();
}
if ((modifier & Modifier.Sealed) == Modifier.Sealed) {
if ((modifier & Modifiers.Sealed) == Modifiers.Sealed) {
outputFormatter.PrintToken(forTypeDecl ? Tokens.NotInheritable : Tokens.NotOverridable);
outputFormatter.Space();
}
if ((modifier & Modifier.ReadOnly) == Modifier.ReadOnly) {
if ((modifier & Modifiers.ReadOnly) == Modifiers.ReadOnly) {
outputFormatter.PrintToken(Tokens.ReadOnly);
outputFormatter.Space();
}
if ((modifier & Modifier.WriteOnly) == Modifier.WriteOnly) {
if ((modifier & Modifiers.WriteOnly) == Modifiers.WriteOnly) {
outputFormatter.PrintToken(Tokens.WriteOnly);
outputFormatter.Space();
}
if ((modifier & Modifier.Const) == Modifier.Const) {
if ((modifier & Modifiers.Const) == Modifiers.Const) {
outputFormatter.PrintToken(Tokens.Const);
outputFormatter.Space();
}
if ((modifier & Modifier.Partial) == Modifier.Partial) {
if ((modifier & Modifiers.Partial) == Modifiers.Partial) {
outputFormatter.PrintToken(Tokens.Partial);
outputFormatter.Space();
}
if ((modifier & Modifier.Extern) == Modifier.Extern) {
if ((modifier & Modifiers.Extern) == Modifiers.Extern) {
// not required in VB
}
// TODO : Volatile
if ((modifier & Modifier.Volatile) == Modifier.Volatile) {
if ((modifier & Modifiers.Volatile) == Modifiers.Volatile) {
errors.Error(-1, -1, String.Format("'Volatile' modifier not convertable"));
}
// TODO : Unsafe
if ((modifier & Modifier.Unsafe) == Modifier.Unsafe) {
if ((modifier & Modifiers.Unsafe) == Modifiers.Unsafe) {
errors.Error(-1, -1, String.Format("'Unsafe' modifier not convertable"));
}
}

28
src/Libraries/NRefactory/Project/Src/Visitors/CodeDOMOutputVisitor.cs

@ -73,34 +73,34 @@ namespace ICSharpCode.NRefactory.Visitors @@ -73,34 +73,34 @@ namespace ICSharpCode.NRefactory.Visitors
}
// FIXME: map all modifiers correctly
static MemberAttributes ConvMemberAttributes(Modifier modifier)
static MemberAttributes ConvMemberAttributes(Modifiers modifier)
{
MemberAttributes attr = (MemberAttributes)0;
if ((modifier & Modifier.Abstract) != 0)
if ((modifier & Modifiers.Abstract) != 0)
attr |= MemberAttributes.Abstract;
if ((modifier & Modifier.Const) != 0)
if ((modifier & Modifiers.Const) != 0)
attr |= MemberAttributes.Const;
if ((modifier & Modifier.Sealed) != 0)
if ((modifier & Modifiers.Sealed) != 0)
attr |= MemberAttributes.Final;
if ((modifier & Modifier.New) != 0)
if ((modifier & Modifiers.New) != 0)
attr |= MemberAttributes.New;
if ((modifier & Modifier.Virtual) != 0)
if ((modifier & Modifiers.Virtual) != 0)
attr |= MemberAttributes.Overloaded;
if ((modifier & Modifier.Override) != 0)
if ((modifier & Modifiers.Override) != 0)
attr |= MemberAttributes.Override;
if ((modifier & Modifier.Static) != 0)
if ((modifier & Modifiers.Static) != 0)
attr |= MemberAttributes.Static;
if ((modifier & Modifier.Private) != 0)
if ((modifier & Modifiers.Private) != 0)
attr |= MemberAttributes.Private;
else if ((modifier & Modifier.Public) != 0)
else if ((modifier & Modifiers.Public) != 0)
attr |= MemberAttributes.Public;
else if ((modifier & Modifier.Internal) != 0 && (modifier & Modifier.Protected) != 0)
else if ((modifier & Modifiers.Internal) != 0 && (modifier & Modifiers.Protected) != 0)
attr |= MemberAttributes.FamilyOrAssembly;
else if ((modifier & Modifier.Internal) != 0)
else if ((modifier & Modifiers.Internal) != 0)
attr |= MemberAttributes.Assembly;
else if ((modifier & Modifier.Protected) != 0)
else if ((modifier & Modifiers.Protected) != 0)
attr |= MemberAttributes.Family;
return attr;
@ -200,7 +200,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -200,7 +200,7 @@ namespace ICSharpCode.NRefactory.Visitors
for (int i = 0; i < fieldDeclaration.Fields.Count; ++i) {
VariableDeclaration field = (VariableDeclaration)fieldDeclaration.Fields[i];
if ((fieldDeclaration.Modifier & Modifier.WithEvents) != 0) {
if ((fieldDeclaration.Modifier & Modifiers.WithEvents) != 0) {
//this.withEventsFields.Add(field);
}
TypeReference fieldType = fieldDeclaration.GetTypeForField(i);

3
src/Libraries/NRefactory/Project/Src/Visitors/LookupTableVisitor.cs

@ -54,6 +54,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -54,6 +54,7 @@ namespace ICSharpCode.NRefactory.Visitors
{
Dictionary<string, List<LocalLookupVariable>> variables;
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public Dictionary<string, List<LocalLookupVariable>> Variables {
get {
return variables;
@ -112,7 +113,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -112,7 +113,7 @@ namespace ICSharpCode.NRefactory.Visitors
varDecl.Name,
localVariableDeclaration.StartLocation,
(blockStack.Count == 0) ? new Location(-1, -1) : blockStack.Peek().EndLocation,
(localVariableDeclaration.Modifier & Modifier.Const) == Modifier.Const);
(localVariableDeclaration.Modifier & Modifiers.Const) == Modifiers.Const);
}
return base.VisitLocalVariableDeclaration(localVariableDeclaration, data);
}

4
src/Libraries/NRefactory/Project/Src/Visitors/ToCSharpConvertVisitor.cs

@ -48,7 +48,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -48,7 +48,7 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitLocalVariableDeclaration(LocalVariableDeclaration localVariableDeclaration, object data)
{
base.VisitLocalVariableDeclaration(localVariableDeclaration, data);
if ((localVariableDeclaration.Modifier & Modifier.Static) == Modifier.Static) {
if ((localVariableDeclaration.Modifier & Modifiers.Static) == Modifiers.Static) {
INode parent = localVariableDeclaration.Parent;
while (parent != null && !IsTypeLevel(parent)) {
parent = parent.Parent;
@ -60,7 +60,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -60,7 +60,7 @@ namespace ICSharpCode.NRefactory.Visitors
if (pos >= 0) {
FieldDeclaration field = new FieldDeclaration(null);
field.TypeReference = localVariableDeclaration.TypeReference;
field.Modifier = Modifier.Static;
field.Modifier = Modifiers.Static;
field.Fields = localVariableDeclaration.Variables;
new PrefixFieldsVisitor(field.Fields, "static_" + GetTypeLevelEntityName(parent) + "_").Run(parent);
type.Children.Insert(pos + 1, field);

18
src/Libraries/NRefactory/Project/Src/Visitors/ToVBNetConvertVisitor.cs

@ -144,7 +144,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -144,7 +144,7 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, object data)
{
MethodDeclaration method = new MethodDeclaration(GetAnonymousMethodName(), Modifier.Private, new TypeReference("System.Void"), anonymousMethodExpression.Parameters, null);
MethodDeclaration method = new MethodDeclaration(GetAnonymousMethodName(), Modifiers.Private, new TypeReference("System.Void"), anonymousMethodExpression.Parameters, null);
method.Body = anonymousMethodExpression.Body;
currentType.Children.Add(method);
ReplaceCurrentNode(new AddressOfExpression(new IdentifierExpression(method.Name)));
@ -173,12 +173,12 @@ namespace ICSharpCode.NRefactory.Visitors @@ -173,12 +173,12 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitMethodDeclaration(MethodDeclaration methodDeclaration, object data)
{
if ((methodDeclaration.Modifier & Modifier.Visibility) == 0)
methodDeclaration.Modifier |= Modifier.Private;
if ((methodDeclaration.Modifier & Modifiers.Visibility) == 0)
methodDeclaration.Modifier |= Modifiers.Private;
base.VisitMethodDeclaration(methodDeclaration, data);
const Modifier externStatic = Modifier.Static | Modifier.Extern;
const Modifiers externStatic = Modifiers.Static | Modifiers.Extern;
if ((methodDeclaration.Modifier & externStatic) == externStatic
&& methodDeclaration.Body.IsNull)
{
@ -261,7 +261,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -261,7 +261,7 @@ namespace ICSharpCode.NRefactory.Visitors
}
if (setLastError && exactSpelling) {
// Only P/Invokes with SetLastError and ExactSpelling can be converted to a DeclareDeclaration
const Modifier removeModifiers = Modifier.Static | Modifier.Extern;
const Modifiers removeModifiers = Modifiers.Static | Modifiers.Extern;
DeclareDeclaration decl = new DeclareDeclaration(method.Name, method.Modifier &~ removeModifiers,
method.TypeReference,
method.Parameters,
@ -277,16 +277,16 @@ namespace ICSharpCode.NRefactory.Visitors @@ -277,16 +277,16 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, object data)
{
if ((propertyDeclaration.Modifier & Modifier.Visibility) == 0)
propertyDeclaration.Modifier |= Modifier.Private;
if ((propertyDeclaration.Modifier & Modifiers.Visibility) == 0)
propertyDeclaration.Modifier |= Modifiers.Private;
return base.VisitPropertyDeclaration(propertyDeclaration, data);
}
public override object VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, object data)
{
// make constructor private if visiblity is not set (unless constructor is static)
if ((constructorDeclaration.Modifier & (Modifier.Visibility | Modifier.Static)) == 0)
constructorDeclaration.Modifier |= Modifier.Private;
if ((constructorDeclaration.Modifier & (Modifiers.Visibility | Modifiers.Static)) == 0)
constructorDeclaration.Modifier |= Modifiers.Private;
return base.VisitConstructorDeclaration(constructorDeclaration, data);
}
}

25
src/Libraries/NRefactory/Project/Src/Visitors/VBNetConstructsConvertVisitor.cs

@ -65,8 +65,8 @@ namespace ICSharpCode.NRefactory.Visitors @@ -65,8 +65,8 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, object data)
{
// make constructor public if visiblity is not set (unless constructor is static)
if ((constructorDeclaration.Modifier & (Modifier.Visibility | Modifier.Static)) == 0)
constructorDeclaration.Modifier = Modifier.Public;
if ((constructorDeclaration.Modifier & (Modifiers.Visibility | Modifiers.Static)) == 0)
constructorDeclaration.Modifier = Modifiers.Public;
// MyBase.New() and MyClass.New() calls inside the constructor are converted to :base() and :this()
BlockStatement body = constructorDeclaration.Body;
@ -105,7 +105,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -105,7 +105,7 @@ namespace ICSharpCode.NRefactory.Visitors
MethodDeclaration method = new MethodDeclaration(declareDeclaration.Name, declareDeclaration.Modifier,
declareDeclaration.TypeReference, declareDeclaration.Parameters,
declareDeclaration.Attributes);
method.Modifier |= Modifier.Extern | Modifier.Static;
method.Modifier |= Modifiers.Extern | Modifiers.Static;
Attribute att = new Attribute("DllImport", null, null);
att.PositionalArguments.Add(CreateStringLiteral(declareDeclaration.Library));
if (declareDeclaration.Alias.Length > 0) {
@ -144,12 +144,12 @@ namespace ICSharpCode.NRefactory.Visitors @@ -144,12 +144,12 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitMethodDeclaration(MethodDeclaration methodDeclaration, object data)
{
if ((methodDeclaration.Modifier & Modifier.Visibility) == 0)
methodDeclaration.Modifier |= Modifier.Public;
if ((methodDeclaration.Modifier & Modifiers.Visibility) == 0)
methodDeclaration.Modifier |= Modifiers.Public;
if ("Finalize".Equals(methodDeclaration.Name, StringComparison.InvariantCultureIgnoreCase)
&& methodDeclaration.Parameters.Count == 0
&& methodDeclaration.Modifier == (Modifier.Protected | Modifier.Override)
&& methodDeclaration.Modifier == (Modifiers.Protected | Modifiers.Override)
&& methodDeclaration.Body.Children.Count == 1)
{
TryCatchStatement tcs = methodDeclaration.Body.Children[0] as TryCatchStatement;
@ -168,7 +168,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -168,7 +168,7 @@ namespace ICSharpCode.NRefactory.Visitors
&& (ie.TargetObject as FieldReferenceExpression).TargetObject is BaseReferenceExpression
&& "Finalize".Equals((ie.TargetObject as FieldReferenceExpression).FieldName, StringComparison.InvariantCultureIgnoreCase))
{
DestructorDeclaration des = new DestructorDeclaration("Destructor", Modifier.None, methodDeclaration.Attributes);
DestructorDeclaration des = new DestructorDeclaration("Destructor", Modifiers.None, methodDeclaration.Attributes);
ReplaceCurrentNode(des);
des.Body = (BlockStatement)tcs.StatementBlock;
return base.VisitDestructorDeclaration(des, data);
@ -177,13 +177,13 @@ namespace ICSharpCode.NRefactory.Visitors @@ -177,13 +177,13 @@ namespace ICSharpCode.NRefactory.Visitors
}
}
if ((methodDeclaration.Modifier & (Modifier.Static | Modifier.Extern)) == Modifier.Static
if ((methodDeclaration.Modifier & (Modifiers.Static | Modifiers.Extern)) == Modifiers.Static
&& methodDeclaration.Body.Children.Count == 0)
{
foreach (AttributeSection sec in methodDeclaration.Attributes) {
foreach (Attribute att in sec.Attributes) {
if ("DllImport".Equals(att.Name, StringComparison.InvariantCultureIgnoreCase)) {
methodDeclaration.Modifier |= Modifier.Extern;
methodDeclaration.Modifier |= Modifiers.Extern;
methodDeclaration.Body = null;
}
}
@ -268,14 +268,14 @@ namespace ICSharpCode.NRefactory.Visitors @@ -268,14 +268,14 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitFieldDeclaration(FieldDeclaration fieldDeclaration, object data)
{
fieldDeclaration.Modifier &= ~Modifier.Dim; // remove "Dim" flag
fieldDeclaration.Modifier &= ~Modifiers.Dim; // remove "Dim" flag
return base.VisitFieldDeclaration(fieldDeclaration, data);
}
public override object VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, object data)
{
if ((propertyDeclaration.Modifier & Modifier.Visibility) == 0)
propertyDeclaration.Modifier = Modifier.Public;
if ((propertyDeclaration.Modifier & Modifiers.Visibility) == 0)
propertyDeclaration.Modifier = Modifiers.Public;
if (propertyDeclaration.HasSetRegion) {
string from = "Value";
@ -312,6 +312,7 @@ namespace ICSharpCode.NRefactory.Visitors @@ -312,6 +312,7 @@ namespace ICSharpCode.NRefactory.Visitors
static volatile Dictionary<string, Expression> constantTable;
static volatile Dictionary<string, Expression> methodTable;
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1802:UseLiteralsWhereAppropriate")]
public static readonly string VBAssemblyName = "Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
static Dictionary<string, Expression> CreateDictionary(params string[] classNames)

28
src/Libraries/NRefactory/Test/Parser/GlobalScope/TypeDeclarationTests.cs

@ -23,7 +23,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -23,7 +23,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("MyClass", td.Name);
Assert.AreEqual("My.Base.Class", td.BaseTypes[0].Type);
Assert.AreEqual(Modifier.None, td.Modifier);
Assert.AreEqual(Modifiers.None, td.Modifier);
}
[Test]
@ -45,7 +45,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -45,7 +45,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast
Assert.IsNotNull(td);
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("MyClass", td.Name);
Assert.AreEqual(Modifier.Partial, td.Modifier);
Assert.AreEqual(Modifiers.Partial, td.Modifier);
}
[Test]
@ -55,10 +55,10 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -55,10 +55,10 @@ namespace ICSharpCode.NRefactory.Tests.Ast
Assert.IsNotNull(td);
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("MyClass", td.Name);
Assert.AreEqual(Modifier.Partial, ((TypeDeclaration)td.Children[0]).Modifier);
Assert.AreEqual(Modifier.Partial | Modifier.Public, ((TypeDeclaration)td.Children[1]).Modifier);
Assert.AreEqual(Modifier.Static, ((TypeDeclaration)td.Children[2]).Modifier);
Assert.AreEqual(Modifier.Static | Modifier.Internal, ((TypeDeclaration)td.Children[3]).Modifier);
Assert.AreEqual(Modifiers.Partial, ((TypeDeclaration)td.Children[0]).Modifier);
Assert.AreEqual(Modifiers.Partial | Modifiers.Public, ((TypeDeclaration)td.Children[1]).Modifier);
Assert.AreEqual(Modifiers.Static, ((TypeDeclaration)td.Children[2]).Modifier);
Assert.AreEqual(Modifiers.Static | Modifiers.Internal, ((TypeDeclaration)td.Children[3]).Modifier);
}
[Test]
@ -68,7 +68,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -68,7 +68,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast
Assert.IsNotNull(td);
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("MyClass", td.Name);
Assert.AreEqual(Modifier.Static, td.Modifier);
Assert.AreEqual(Modifiers.Static, td.Modifier);
}
[Test]
@ -78,7 +78,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -78,7 +78,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("G", td.Name);
Assert.AreEqual(Modifier.Public, td.Modifier);
Assert.AreEqual(Modifiers.Public, td.Modifier);
Assert.AreEqual(0, td.BaseTypes.Count);
Assert.AreEqual(1, td.Templates.Count);
Assert.AreEqual("T", td.Templates[0].Name);
@ -115,7 +115,7 @@ public class Generic<T, S> : System.IComparable where S : G<T[]> where T : MyNa @@ -115,7 +115,7 @@ public class Generic<T, S> : System.IComparable where S : G<T[]> where T : MyNa
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("Generic", td.Name);
Assert.AreEqual(Modifier.Public, td.Modifier);
Assert.AreEqual(Modifiers.Public, td.Modifier);
Assert.AreEqual(1, td.BaseTypes.Count);
Assert.AreEqual("System.IComparable", td.BaseTypes[0].Type);
@ -144,7 +144,7 @@ public abstract class MyClass : MyBase, Interface1, My.Test.Interface2 @@ -144,7 +144,7 @@ public abstract class MyClass : MyBase, Interface1, My.Test.Interface2
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("MyClass", td.Name);
Assert.AreEqual(Modifier.Public | Modifier.Abstract, td.Modifier);
Assert.AreEqual(Modifiers.Public | Modifiers.Abstract, td.Modifier);
Assert.AreEqual(1, td.Attributes.Count);
Assert.AreEqual(3, td.BaseTypes.Count);
Assert.AreEqual("MyBase", td.BaseTypes[0].Type);
@ -244,7 +244,7 @@ public abstract class MyClass : MyBase, Interface1, My.Test.Interface2 @@ -244,7 +244,7 @@ public abstract class MyClass : MyBase, Interface1, My.Test.Interface2
Assert.AreEqual("TestClass", td.Name);
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual(Modifier.Partial, td.Modifier);
Assert.AreEqual(Modifiers.Partial, td.Modifier);
}
[Test]
@ -255,7 +255,7 @@ public abstract class MyClass : MyBase, Interface1, My.Test.Interface2 @@ -255,7 +255,7 @@ public abstract class MyClass : MyBase, Interface1, My.Test.Interface2
Assert.AreEqual("TestClass", td.Name);
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual(Modifier.Partial | Modifier.Public, td.Modifier);
Assert.AreEqual(Modifiers.Partial | Modifiers.Public, td.Modifier);
}
[Test]
@ -270,7 +270,7 @@ End Class @@ -270,7 +270,7 @@ End Class
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("Test", td.Name);
Assert.AreEqual(Modifier.Public, td.Modifier);
Assert.AreEqual(Modifiers.Public, td.Modifier);
Assert.AreEqual(0, td.BaseTypes.Count);
Assert.AreEqual(1, td.Templates.Count);
Assert.AreEqual("T", td.Templates[0].Name);
@ -307,7 +307,7 @@ End Class @@ -307,7 +307,7 @@ End Class
Assert.AreEqual(ClassType.Class, td.Type);
Assert.AreEqual("Generic", td.Name);
Assert.AreEqual(Modifier.Public, td.Modifier);
Assert.AreEqual(Modifiers.Public, td.Modifier);
Assert.AreEqual(1, td.BaseTypes.Count);
Assert.AreEqual("System.IComparable", td.BaseTypes[0].Type);

2
src/Libraries/NRefactory/Test/Parser/TypeLevel/ConstructorDeclarationTests.cs

@ -56,7 +56,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -56,7 +56,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast
Assert.AreEqual(2, cd.Parameters.Count);
Assert.AreEqual("Integer", cd.Parameters[0].TypeReference.Type);
Assert.AreEqual("String", cd.Parameters[1].TypeReference.Type);
Assert.AreEqual(ParamModifier.Optional, cd.Parameters[1].ParamModifier & ParamModifier.Optional);
Assert.AreEqual(ParameterModifiers.Optional, cd.Parameters[1].ParamModifier & ParameterModifiers.Optional);
}
#endregion
}

2
src/Libraries/NRefactory/Test/Parser/TypeLevel/MethodDeclarationTests.cs

@ -222,7 +222,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast @@ -222,7 +222,7 @@ namespace ICSharpCode.NRefactory.Tests.Ast
end sub";
MethodDeclaration md = ParseUtilVBNet.ParseTypeMember<MethodDeclaration>(program);
Assert.AreEqual(Modifier.Public | Modifier.Static, md.Modifier);
Assert.AreEqual(Modifiers.Public | Modifiers.Static, md.Modifier);
Assert.AreEqual(2, md.StartLocation.Y, "StartLocation.Y");
Assert.AreEqual(2, md.EndLocation.Y, "EndLocation.Y");
Assert.AreEqual(2, md.StartLocation.X, "StartLocation.X");

2
src/Main/Base/Project/Src/Dom/ModifierEnum.cs

@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
// </file>
using System;
using M = ICSharpCode.NRefactory.Ast.Modifier;
using M = ICSharpCode.NRefactory.Ast.Modifiers;
namespace ICSharpCode.SharpDevelop.Dom
{

4
src/Main/Base/Project/Src/Dom/NRefactoryResolver/NRefactoryASTConvertVisitor.cs

@ -42,7 +42,7 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver @@ -42,7 +42,7 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver
return currentClass.Count == 0 ? null : currentClass.Peek();
}
ModifierEnum ConvertModifier(AST.Modifier m)
ModifierEnum ConvertModifier(AST.Modifiers m)
{
if (currentClass.Count > 0 && currentClass.Peek().ClassType == ClassType.Interface)
return ConvertModifier(m, ModifierEnum.Public);
@ -50,7 +50,7 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver @@ -50,7 +50,7 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver
return ConvertModifier(m, ModifierEnum.Private);
}
ModifierEnum ConvertModifier(AST.Modifier m, ModifierEnum defaultModifier)
ModifierEnum ConvertModifier(AST.Modifiers m, ModifierEnum defaultModifier)
{
ModifierEnum r = (ModifierEnum)m;
if (r == ModifierEnum.None)

21
src/Main/Base/Project/Src/Services/RefactoringService/CodeGenerator.cs

@ -14,6 +14,7 @@ using ICSharpCode.NRefactory.Ast; @@ -14,6 +14,7 @@ using ICSharpCode.NRefactory.Ast;
using ICSharpCode.SharpDevelop.Dom;
using ICSharpCode.TextEditor;
using ICSharpCode.TextEditor.Document;
using NR = ICSharpCode.NRefactory.Ast;
namespace ICSharpCode.SharpDevelop.Refactoring
{
@ -80,14 +81,14 @@ namespace ICSharpCode.SharpDevelop.Refactoring @@ -80,14 +81,14 @@ namespace ICSharpCode.SharpDevelop.Refactoring
return typeInTargetContext != null && typeInTargetContext.FullyQualifiedName == returnType.FullyQualifiedName;
}
public static Modifier ConvertModifier(ModifierEnum m)
public static Modifiers ConvertModifier(ModifierEnum m)
{
return (Modifier)m;
return (Modifiers)m;
}
public static ParamModifier ConvertModifier(ParameterModifiers m)
public static NR.ParameterModifiers ConvertModifier(Dom.ParameterModifiers m)
{
return (ParamModifier)m;
return (NR.ParameterModifiers)m;
}
public static UsingDeclaration ConvertUsing(IUsing u)
@ -334,7 +335,7 @@ namespace ICSharpCode.SharpDevelop.Refactoring @@ -334,7 +335,7 @@ namespace ICSharpCode.SharpDevelop.Refactoring
property.SetRegion = new PropertySetRegion(block, null);
}
property.Modifier = Modifier.Public | (property.Modifier & Modifier.Static);
property.Modifier = Modifiers.Public | (property.Modifier & Modifiers.Static);
return property;
}
#endregion
@ -431,7 +432,7 @@ namespace ICSharpCode.SharpDevelop.Refactoring @@ -431,7 +432,7 @@ namespace ICSharpCode.SharpDevelop.Refactoring
{
ClassFinder context = new ClassFinder(targetClass, targetClass.Region.BeginLine + 1, 0);
TypeReference interfaceReference = ConvertType(interf, context);
Modifier modifier = ConvertModifier(implModifier);
Modifiers modifier = ConvertModifier(implModifier);
List<IEvent> targetClassEvents = targetClass.DefaultReturnType.GetEvents();
foreach (IEvent e in interf.GetEvents()) {
if (targetClassEvents.Find(delegate(IEvent te) { return e.Name == te.Name; }) == null) {
@ -482,8 +483,8 @@ namespace ICSharpCode.SharpDevelop.Refactoring @@ -482,8 +483,8 @@ namespace ICSharpCode.SharpDevelop.Refactoring
public virtual AttributedNode GetOverridingMethod(IMember baseMember, ClassFinder targetContext)
{
AttributedNode node = ConvertMember(baseMember, targetContext);
node.Modifier &= ~(Modifier.Virtual | Modifier.Abstract);
node.Modifier |= Modifier.Override;
node.Modifier &= ~(Modifiers.Virtual | Modifiers.Abstract);
node.Modifier |= Modifiers.Override;
MethodDeclaration method = node as MethodDeclaration;
if (method != null) {
@ -520,9 +521,9 @@ namespace ICSharpCode.SharpDevelop.Refactoring @@ -520,9 +521,9 @@ namespace ICSharpCode.SharpDevelop.Refactoring
InvocationExpression ie = new InvocationExpression(methodName, null);
foreach (ParameterDeclarationExpression param in method.Parameters) {
Expression expr = new IdentifierExpression(param.ParameterName);
if (param.ParamModifier == ParamModifier.Ref) {
if (param.ParamModifier == NR.ParameterModifiers.Ref) {
expr = new DirectionExpression(FieldDirection.Ref, expr);
} else if (param.ParamModifier == ParamModifier.Out) {
} else if (param.ParamModifier == NR.ParameterModifiers.Out) {
expr = new DirectionExpression(FieldDirection.Out, expr);
}
ie.Arguments.Add(expr);

8
src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/AbstractClassImplementorCodeGenerator.cs

@ -35,16 +35,16 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands @@ -35,16 +35,16 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands
foreach (IProperty property in currentClass.DefaultReturnType.GetProperties()) {
if (property.IsAbstract) {
AttributedNode node = CodeGenerator.ConvertMember(property, classFinderContext);
node.Modifier &= ~(Modifier.Abstract | Modifier.Virtual);
node.Modifier |= Modifier.Override;
node.Modifier &= ~(Modifiers.Abstract | Modifiers.Virtual);
node.Modifier |= Modifiers.Override;
nodes.Add(node);
}
}
foreach (IMethod method in currentClass.DefaultReturnType.GetMethods()) {
if (method.IsAbstract) {
AttributedNode node = CodeGenerator.ConvertMember(method, classFinderContext);
node.Modifier &= ~(Modifier.Abstract | Modifier.Virtual);
node.Modifier |= Modifier.Override;
node.Modifier &= ~(Modifiers.Abstract | Modifiers.Virtual);
node.Modifier |= Modifiers.Override;
nodes.Add(node);
}
}

2
src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/ConstructorCodeGenerator.cs

@ -36,7 +36,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands @@ -36,7 +36,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands
public override void GenerateCode(List<AbstractNode> nodes, IList items)
{
ConstructorDeclaration ctor = new ConstructorDeclaration(currentClass.Name, Modifier.Public, null, null);
ConstructorDeclaration ctor = new ConstructorDeclaration(currentClass.Name, Modifiers.Public, null, null);
ctor.Body = new BlockStatement();
foreach (FieldWrapper w in items) {
string parameterName = codeGen.GetParameterName(w.Field.Name);

4
src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/EqualsCodeGenerator.cs

@ -26,7 +26,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands @@ -26,7 +26,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands
public override void GenerateCode(List<AbstractNode> nodes, IList items)
{
TypeReference intReference = new TypeReference("System.Int32");
MethodDeclaration method = new MethodDeclaration("GetHashCode", Modifier.Public | Modifier.Override, intReference, null, null);
MethodDeclaration method = new MethodDeclaration("GetHashCode", Modifiers.Public | Modifiers.Override, intReference, null, null);
Expression expr = CallGetHashCode(new IdentifierExpression(currentClass.Fields[0].Name));
for (int i = 1; i < currentClass.Fields.Count; i++) {
IdentifierExpression identifier = new IdentifierExpression(currentClass.Fields[i].Name);
@ -40,7 +40,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands @@ -40,7 +40,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands
TypeReference boolReference = new TypeReference("System.Boolean");
TypeReference objectReference = new TypeReference("System.Object");
method = new MethodDeclaration("Equals", Modifier.Public | Modifier.Override, boolReference, null, null);
method = new MethodDeclaration("Equals", Modifiers.Public | Modifiers.Override, boolReference, null, null);
method.Parameters.Add(new ParameterDeclarationExpression(objectReference, "obj"));
method.Body = new BlockStatement();

2
src/Main/Base/Project/Src/TextEditor/Commands/CodeGenerators/ToStringCodeGenerator.cs

@ -21,7 +21,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands @@ -21,7 +21,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands
{
TypeReference stringReference = new TypeReference("System.String");
MethodDeclaration method = new MethodDeclaration("ToString",
Modifier.Public | Modifier.Override,
Modifiers.Public | Modifiers.Override,
stringReference,
null, null);
method.Body = new BlockStatement();

Loading…
Cancel
Save