JSFunctionAttributeEnum JSFunctionAttributeEnum JSFunctionAttributeEnum JSFunctionAttributeEnum Enum

Definition

Specifies the calling conventions of functions that are generated by the JScript compiler. Used with the JSFunctionAttribute custom attribute.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

This API supports the product infrastructure and is not intended to be used directly from your code.

public enum class JSFunctionAttributeEnum
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Runtime.InteropServices.Guid("BA5ED019-F669-3C35-93AC-3ABF776B62B3")]
public enum JSFunctionAttributeEnum
type JSFunctionAttributeEnum = 
Public Enum JSFunctionAttributeEnum
Inheritance
JSFunctionAttributeEnumJSFunctionAttributeEnumJSFunctionAttributeEnumJSFunctionAttributeEnum
Attributes

Fields

ClassicFunction ClassicFunction ClassicFunction ClassicFunction 35

Specifies the aggregate of HasArguments, HasEngine, and HasThisObject.

ClassicNestedFunction ClassicNestedFunction ClassicNestedFunction ClassicNestedFunction 47

Specifies the aggregate of ClassicFunction and NestedFunction.

HasArguments HasArguments HasArguments HasArguments 1

Specifies that the third parameter of the function is of type Object. The caller should pass in an object that implements the JScript arguments object, typically an instance of ArgumentsObject. The JScript runtime assumes that if HasArguments is set, then HasStackFrame and HasThisObject are also set.

HasEngine HasEngine HasEngine HasEngine 32

Specifies that the second parameter of the function is of type VsaEngine. The caller should pass in an instance of VsaEngine from which the function can retrieve the runtime infrastructure. The JScript runtime assumes that if HasEngine is set then HasThisObject is also set.

HasStackFrame HasStackFrame HasStackFrame HasStackFrame 8

Specifies that the function copies its local variables into a stack frame object maintained by the JScript runtime before making a call out. It copies the variables back from the stack frame object to its locals when control is returned to the function. This flag is set on functions that contain nested functions that access the parent function's locals.

HasThisObject HasThisObject HasThisObject HasThisObject 2

Specifies that the first parameter of the function is of type Object and that it is usually named thisob. The caller should pass in an instance of the object that the function acts on.

HasVarArgs HasVarArgs HasVarArgs HasVarArgs 16

Specifies that the function takes a variable number of arguments. The last parameter is of type array of Object, which holds any arguments that are explicitly specified.

IsExpandoMethod IsExpandoMethod IsExpandoMethod IsExpandoMethod 64

Specifies that the function is a constructor function for a prototype-based object. For more information, see Prototype-based Objects and expando Modifier.

IsInstanceNestedClassConstructor IsInstanceNestedClassConstructor IsInstanceNestedClassConstructor IsInstanceNestedClassConstructor 128

Specifies that the function is a constructor for a nested instance class. The first parameter of the function an instance of the parent class.

IsNested IsNested IsNested IsNested 4

Specifies that the function is nested in another JScript function.

NestedFunction NestedFunction NestedFunction NestedFunction 44

Specifies the aggregate of HasStackFrame, IsNested, and HasEngine.

None None None None 0

Specifies a regular .NET Framework method with no special calling conventions. Typically not used as in this case the JSFunctionAttribute is not emitted.

Remarks

The parameters associated with HasArguments, HasEngine, and HasThisObject are implicit and are automatically provided by the JScript runtime when the function is called from JScript code.

Applies to