Class StdLibValueAttribute
States that a standard-library parameter declared Variant reads the value of its argument, as MS-VBA compiles it: an object given to it stands for
its default member's value, and one that has none to give is a compile error (ObjectValueStaticSemantics).
[AttributeUsage(AttributeTargets.Parameter)]
public sealed class StdLibValueAttribute : Attribute
- Inheritance
-
StdLibValueAttribute
- Inherited Members
Remarks
MS-VBAL declares these parameters Variant, as it declares those of Round or Hex, which MS-VBA compiles any argument for. What tells
them apart is only how MS-VBA compiles a call (recorded in Excel): CInt(Nothing) is "Invalid use of object", Round(Nothing) compiles.
The symbol of the parameter carries it as ValueDestination.
Constructors
StdLibValueAttribute(ValueDestination)
States that a standard-library parameter declared Variant reads the value of its argument, as MS-VBA compiles it: an object given to it stands for
its default member's value, and one that has none to give is a compile error (ObjectValueStaticSemantics).
public StdLibValueAttribute(ValueDestination destination = ValueDestination.TypedValue)
Parameters
destinationValueDestinationWhat the parameter expects of an object: a value of a declared type, unless it says otherwise.
Remarks
MS-VBAL declares these parameters Variant, as it declares those of Round or Hex, which MS-VBA compiles any argument for. What tells
them apart is only how MS-VBA compiles a call (recorded in Excel): CInt(Nothing) is "Invalid use of object", Round(Nothing) compiles.
The symbol of the parameter carries it as ValueDestination.
Properties
Destination
What the parameter expects of an object.
public ValueDestination Destination { get; }