Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Linq.Expressions.DebugViewWriter Class Referencesealed

Public Member Functions

virtual ? Expression Visit (Expression? node)
 
ReadOnlyCollection< ExpressionVisit (ReadOnlyCollection< Expression > nodes)
 
TVisitAndConvert< T > (T? node, string? callerName)
 
ReadOnlyCollection< TVisitAndConvert< T > (ReadOnlyCollection< T > nodes, string? callerName)
 

Static Public Member Functions

static ReadOnlyCollection< TVisit< T > (ReadOnlyCollection< T > nodes, Func< T, T > elementVisitor)
 

Protected Member Functions

override ElementInit VisitElementInit (ElementInit node)
 
override MemberAssignment VisitMemberAssignment (MemberAssignment assignment)
 
override MemberListBinding VisitMemberListBinding (MemberListBinding binding)
 
override MemberMemberBinding VisitMemberMemberBinding (MemberMemberBinding binding)
 
override SwitchCase VisitSwitchCase (SwitchCase node)
 
override CatchBlock VisitCatchBlock (CatchBlock node)
 
virtual ? LabelTarget VisitLabelTarget (LabelTarget? node)
 
virtual MemberBinding VisitMemberBinding (MemberBinding node)
 

Package Functions

override Expression VisitBinary (BinaryExpression node)
 
override Expression VisitParameter (ParameterExpression node)
 
override Expression VisitLambda< T > (Expression< T > node)
 
override Expression VisitConditional (ConditionalExpression node)
 
override Expression VisitConstant (ConstantExpression node)
 
override Expression VisitRuntimeVariables (RuntimeVariablesExpression node)
 
override Expression VisitMember (MemberExpression node)
 
override Expression VisitInvocation (InvocationExpression node)
 
override Expression VisitMethodCall (MethodCallExpression node)
 
override Expression VisitNewArray (NewArrayExpression node)
 
override Expression VisitNew (NewExpression node)
 
override Expression VisitListInit (ListInitExpression node)
 
override Expression VisitMemberInit (MemberInitExpression node)
 
override Expression VisitTypeBinary (TypeBinaryExpression node)
 
override Expression VisitUnary (UnaryExpression node)
 
override Expression VisitBlock (BlockExpression node)
 
override Expression VisitDefault (DefaultExpression node)
 
override Expression VisitLabel (LabelExpression node)
 
override Expression VisitGoto (GotoExpression node)
 
override Expression VisitLoop (LoopExpression node)
 
override Expression VisitSwitch (SwitchExpression node)
 
override Expression VisitTry (TryExpression node)
 
override Expression VisitIndex (IndexExpression node)
 
override Expression VisitExtension (Expression node)
 
override Expression VisitDebugInfo (DebugInfoExpression node)
 
virtual Expression VisitDynamic (DynamicExpression node)
 

Static Package Functions

static void WriteTo (Expression node, TextWriter writer)
 

Properties

int Base [get]
 
int Delta [get]
 
int Depth [get]
 

Private Types

enum  Flow { None = 0 , Space = 1 , NewLine = 2 , Break = 0x8000 }
 

Private Member Functions

 DebugViewWriter (TextWriter file)
 
void Indent ()
 
void Dedent ()
 
void NewLine ()
 
int GetLambdaId (LambdaExpression le)
 
int GetParamId (ParameterExpression p)
 
int GetLabelTargetId (LabelTarget target)
 
void WriteTo (Expression node)
 
void Out (string s)
 
void Out (Flow before, string s)
 
void Out (string s, Flow after)
 
void Out (Flow before, string s, Flow after)
 
void WriteLine ()
 
void Write (string s)
 
Flow GetFlow (Flow flow)
 
Flow CheckBreak (Flow flow)
 
void VisitExpressions< T > (char open, IReadOnlyList< T > expressions)
 
void VisitExpressions< T > (char open, char separator, IReadOnlyList< T > expressions)
 
void VisitDeclarations (IReadOnlyList< ParameterExpression > expressions)
 
void VisitExpressions< T > (char open, char separator, IReadOnlyList< T > expressions, Action< T > visit)
 
void OutMember (Expression node, Expression instance, MemberInfo member)
 
void ParenthesizedVisit (Expression parent, Expression nodeToVisit)
 
void DumpLabel (LabelTarget target)
 
string GetLabelTargetName (LabelTarget target)
 
void WriteLambda (LambdaExpression lambda)
 
string GetLambdaName (LambdaExpression lambda)
 
Expression[] VisitArguments (IArgumentProvider nodes)
 
ParameterExpression[] VisitParameters (IParameterProvider nodes, string callerName)
 

Static Private Member Functions

static int GetId< T > (T e, ref Dictionary< T, int > ids)
 
static bool IsSimpleExpression (Expression node)
 
static string GetConstantValueSuffix (Type type)
 
static bool NeedsParentheses (Expression parent, Expression child)
 
static int GetOperatorPrecedence (Expression node)
 
static bool ContainsWhiteSpace (string name)
 
static string QuoteName (string name)
 
static string GetDisplayName (string name)
 
static UnaryExpression ValidateUnary (UnaryExpression before, UnaryExpression after)
 
static BinaryExpression ValidateBinary (BinaryExpression before, BinaryExpression after)
 
static SwitchExpression ValidateSwitch (SwitchExpression before, SwitchExpression after)
 
static void ValidateChildType (Type before, Type after, string methodName)
 

Private Attributes

readonly TextWriter _out
 
int _column
 
readonly Stack< int > _stack = new Stack<int>()
 
int _delta
 
Flow _flow
 
Queue< LambdaExpression_lambdas
 
Dictionary< LambdaExpression, int > _lambdaIds
 
Dictionary< ParameterExpression, int > _paramIds
 
Dictionary< LabelTarget, int > _labelIds
 

Detailed Description

Definition at line 9 of file DebugViewWriter.cs.


The documentation for this class was generated from the following file: