Class ParameterDescriptor
A transport-friendly projection of a VBParameterSymbol.
public record ParameterDescriptor : IEquatable<ParameterDescriptor>
- Inheritance
-
ParameterDescriptor
- Implements
- Inherited Members
Properties
Array
The array the parameter is, when it is one: see Array.
public ArrayDescriptor? Array { get; init; }
Property Value
DeclaredTypeName
The declared type's name, or null — resolved host-side like a member's.
public string? DeclaredTypeName { get; init; }
Property Value
DefaultValue
The value of the parameter's default-value clause (MS-VBAL 5.3.1.5), or null when the
declaration has none — the host then falls back to the declared type's own default value.
public ExpressionNode? DefaultValue { get; init; }
Property Value
Remarks
The expression, not a value: a constant expression is not always a literal (Optional k As
Long = 3 * 5, or one written in terms of a Const), and the host is where the evaluator
that can reduce it lives — the same reason Value travels
unreduced, and it is reduced by the same fold.
IsOptional
Whether the parameter carries an Optional token.
public bool IsOptional { get; init; }
Property Value
IsParamArray
Whether the parameter is a ParamArray.
public bool IsParamArray { get; init; }
Property Value
Name
The parameter's identifier name.
public string Name { get; init; }
Property Value
ParameterKind
How an argument is passed to the parameter.
public ParameterKind ParameterKind { get; init; }
Property Value
Range
The source span of the parameter declaration.
public SourceRange Range { get; init; }