constructorinitializer.cs
来自「全功能c#编译器」· CS 代码 · 共 101 行
CS
101 行
/*
* Created by SharpDevelop.
* User: Andrea
* Date: 04.04.2004
* Time: 12:47
*
* To change this template use Tools | Options | File Templates.
*/
using System;
using System.Collections.Generic;
using System.Diagnostics;
namespace ICSharpCode.CsVbRefactory.Parser.AST
{
public enum ConstructorInitializerType {
None,
Base,
This
}
public class ConstructorInitializer : AbstractNode, INullable
{
ConstructorInitializerType constructorInitializerType = ConstructorInitializerType.None;
List<Expression> arguments = new List<Expression>(1);
public ConstructorInitializerType ConstructorInitializerType {
get {
return constructorInitializerType;
}
set {
constructorInitializerType = value;
}
}
public List<Expression> Arguments {
get {
return arguments;
}
set {
arguments = value == null ? new List<Expression>(1) : value;
}
}
public virtual bool IsNull {
get {
return false;
}
}
public static NullConstructorInitializer Null {
get {
return NullConstructorInitializer.Instance;
}
}
public override object AcceptVisitor(IASTVisitor visitor, object data)
{
return visitor.Visit(this, data);
}
public override string ToString()
{
return String.Format("[ConstructorInitializer: ConstructorInitializerType = {0}, Arguments = {1}]",
ConstructorInitializerType,
GetCollectionString(arguments));
}
}
public class NullConstructorInitializer : ConstructorInitializer
{
static NullConstructorInitializer nullConstructorInitializer = new NullConstructorInitializer();
public static NullConstructorInitializer Instance {
get {
return nullConstructorInitializer;
}
}
public override bool IsNull {
get {
return true;
}
}
NullConstructorInitializer()
{
}
public override object AcceptVisitor(IASTVisitor visitor, object data)
{
return data;
}
public override string ToString()
{
return String.Format("[NullConstructorInitializer]");
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?