public virtual void VisitParameterDeclarationSyntax(ParameterDeclarationSyntax syntax) { this.Visit(syntax.Keyword); this.Visit(syntax.Name); this.Visit(syntax.Type); this.Visit(syntax.Modifier); }
public static SyntaxBase?TryGetDefaultValue(ParameterDeclarationSyntax parameterDeclarationSyntax) { if (parameterDeclarationSyntax.Modifier is ParameterDefaultValueSyntax defaultValueSyntax) { return(defaultValueSyntax.DefaultValue); } return(null); }
public static SyntaxBase?TryGetDefaultValue(ParameterDeclarationSyntax parameterDeclarationSyntax) { if (parameterDeclarationSyntax.Modifier is ParameterDefaultValueSyntax defaultValueSyntax) { return(defaultValueSyntax.DefaultValue); } if (parameterDeclarationSyntax.Modifier is ObjectSyntax modifierObject) { return(TryGetObjectProperty(modifierObject, LanguageConstants.ParameterDefaultPropertyName)); } return(null); }
public static IEnumerable <SyntaxBase>?TryGetAllowedItems(ParameterDeclarationSyntax parameterDeclarationSyntax) { if (!(parameterDeclarationSyntax.Modifier is ObjectSyntax modifierObject)) { return(null); } var allowedValuesSyntax = TryGetObjectProperty(modifierObject, LanguageConstants.ParameterAllowedPropertyName); if (!(allowedValuesSyntax is ArraySyntax allowedArraySyntax)) { return(null); } return(allowedArraySyntax.Items.Select(i => i.Value)); }
protected virtual SyntaxBase ReplaceParameterDeclarationSyntax(ParameterDeclarationSyntax syntax) { var hasChanges = TryRewrite(syntax.LeadingNodes, out var leadingNodes); hasChanges |= TryRewriteStrict(syntax.Keyword, out var keyword); hasChanges |= TryRewriteStrict(syntax.Name, out var name); hasChanges |= TryRewrite(syntax.Type, out var type); hasChanges |= TryRewrite(syntax.Modifier, out var modifier); if (!hasChanges) { return(syntax); } return(new ParameterDeclarationSyntax(leadingNodes, keyword, name, type, modifier)); }
public static ArraySyntax?TryGetAllowedSyntax(ParameterDeclarationSyntax parameterDeclarationSyntax) { if (!(parameterDeclarationSyntax.Modifier is ObjectSyntax modifierObject)) { return(null); } var allowedValuesSyntax = TryGetObjectProperty(modifierObject, LanguageConstants.ParameterAllowedPropertyName); if (!(allowedValuesSyntax is ArraySyntax allowedArraySyntax)) { return(null); } return(allowedArraySyntax); }
public static IEnumerable<SyntaxBase>? TryGetAllowedItems(ParameterDeclarationSyntax parameterDeclarationSyntax) { if (!(parameterDeclarationSyntax.Modifier is ObjectSyntax modifierObject)) { return null; } var allowedProperty = modifierObject.Properties.SingleOrDefault(p => p.TryGetKeyText() == LanguageConstants.ParameterAllowedPropertyName); if (allowedProperty == null) { return null; } if (!(allowedProperty.Value is ArraySyntax allowedArraySyntax)) { return null; } return allowedArraySyntax.Items.Select(i => i.Value); }
public static TypeSymbol?TryGetPrimitiveType(ParameterDeclarationSyntax parameterDeclarationSyntax) => LanguageConstants.TryGetDeclarationType(parameterDeclarationSyntax.ParameterType?.TypeName);
void ISyntaxVisitor.VisitParameterDeclarationSyntax(ParameterDeclarationSyntax syntax) => ReplaceCurrent(syntax, ReplaceParameterDeclarationSyntax);
protected virtual ParameterDeclarationSyntax ReplaceParameterDeclarationSyntax(ParameterDeclarationSyntax syntax) { var hasChanges = Rewrite(syntax.Keyword, out var keyword); hasChanges |= Rewrite(syntax.Name, out var name); hasChanges |= Rewrite(syntax.Type, out var type); hasChanges |= RewriteNullable(syntax.Modifier, out var modifier); if (!hasChanges) { return(syntax); } return(new ParameterDeclarationSyntax(keyword, name, type, modifier)); }