📄 node.cs
字号:
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Daniel Grunwald" email="daniel@danielgrunwald.de"/>
// <version>$Revision: 2032 $</version>
// </file>
using System;
using System.Collections.Generic;
namespace NRefactoryASTGenerator.Ast
{
interface INode {}
interface INullable {}
struct Location {}
enum Modifiers { None }
[CustomImplementation]
abstract class AbstractNode : INode {}
abstract class AttributedNode : AbstractNode
{
List<AttributeSection> attributes;
Modifiers modifier;
public AttributedNode(List<AttributeSection> attributes) {}
public AttributedNode(Modifiers modifier, List<AttributeSection> attributes) {}
}
abstract class ParametrizedNode : AttributedNode
{
string name;
List<ParameterDeclarationExpression> parameters;
public ParametrizedNode(Modifiers modifier, List<AttributeSection> attributes,
string name, List<ParameterDeclarationExpression> parameters)
: base(modifier, attributes)
{}
public ParametrizedNode(Modifiers modifier, List<AttributeSection> attributes)
: base(modifier, attributes)
{}
}
[CustomImplementation]
class TypeReference : AbstractNode
{
List<TypeReference> genericTypes;
}
[CustomImplementation]
class InnerClassTypeReference : TypeReference
{
TypeReference baseType;
}
class AttributeSection : AbstractNode, INullable
{
string attributeTarget;
List<Attribute> attributes;
public AttributeSection(string attributeTarget, List<Attribute> attributes) {}
}
class Attribute : AbstractNode
{
string name;
List<Expression> positionalArguments;
List<NamedArgumentExpression> namedArguments;
public Attribute(string name, List<Expression> positionalArguments, List<NamedArgumentExpression> namedArguments) {}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -