本文整理汇总了C#中AssignmentExpressionSyntax.WithRight方法的典型用法代码示例。如果您正苦于以下问题:C# AssignmentExpressionSyntax.WithRight方法的具体用法?C# AssignmentExpressionSyntax.WithRight怎么用?C# AssignmentExpressionSyntax.WithRight使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AssignmentExpressionSyntax
的用法示例。
在下文中一共展示了AssignmentExpressionSyntax.WithRight方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: VisitAssignmentExpression
/// <summary>
/// Normalizes the <paramref name="assignment" />.
/// </summary>
public override SyntaxNode VisitAssignmentExpression(AssignmentExpressionSyntax assignment)
{
if (!IsFormulaType(assignment.Left) || IsFormulaType(assignment.Right))
return base.VisitAssignmentExpression(assignment);
return assignment.WithRight(CreateInvocation(assignment.Right));
}
示例2: VisitAssignmentExpression
/// <summary>
/// Normalizes the <paramref name="assignment" />.
/// </summary>
public override SyntaxNode VisitAssignmentExpression(AssignmentExpressionSyntax assignment)
{
var objectCreation = assignment.Right as ObjectCreationExpressionSyntax;
if (objectCreation == null)
return assignment;
var fault = SemanticModel.GetTypeSymbol<Fault>();
if (SemanticModel.GetTypeInfo(objectCreation).Type?.IsDerivedFrom(fault) == false)
return assignment;
var targetSymbol = SemanticModel.GetSymbolInfo(assignment.Left).Symbol;
if (targetSymbol == null || (targetSymbol.Kind != SymbolKind.Field && targetSymbol.Kind != SymbolKind.Property))
return assignment;
return assignment.WithRight(AddNameInitializer(fault, objectCreation, targetSymbol.Name));
}
示例3: VisitAssignmentExpression
/// <summary>
/// Normalizes the <paramref name="assignment" />.
/// </summary>
public override SyntaxNode VisitAssignmentExpression(AssignmentExpressionSyntax assignment)
{
var leftType = DetermineType(assignment.Left);
if (leftType == ExpressionType.Other)
return base.VisitAssignmentExpression(assignment);
var rightType = DetermineType(assignment.Right);
if (rightType != ExpressionType.Other)
return base.VisitAssignmentExpression(assignment);
return assignment.WithRight(CreateInvocation(leftType, assignment.Right));
}