JSFunctionAttributeEnum Enumeration

Used with the JSFunctionAttribute custom attribute to annotate the calling conventions of functions generated by the JScript compiler. 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.

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

Namespace: Microsoft.JScript
Assembly: Microsoft.JScript (in microsoft.jscript.dll)

public enum JSFunctionAttributeEnum
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute FlagsAttribute() */ 
/** @attribute GuidAttribute("BA5ED019-F669-3C35-93AC-3ABF776B62B3") */ 
public enum JSFunctionAttributeEnum
public enum JSFunctionAttributeEnum

 Member nameDescription
ClassicFunctionAggregate that sets HasArguments, HasEngine, and HasThisObject
ClassicNestedFunctionAggregate that sets ClassicFunction and NestedFunction
HasArgumentsThe 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.

HasEngineThe 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 JScript (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/jscript7/html/jsoriObjects.asp) and runtime infrastructure. 

The JScript runtime assumes that if HasEngine is set then HasThisObject is also set.

HasStackFrameCopies 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.

HasThisObjectThe first parameter of the function is of type Object. The caller should pass in an instance of the object that represents the JScript object for the function. 
HasVarArgsThe function takes a variable number of arguments. The last parameter is of type array of Object, which holds any arguments that are explicitly specified. 
IsExpandoMethodAn expando Modifier method defined on a class.  
IsInstanceNestedClassConstructorConstructor for a nested instance class. The first parameter of the function an instance of the parent class. 
IsNestedNested in another JScript function. 
NestedFunctionNot used. 
NoneA regular .NET method with no special calling conventions. Typically not used as in this case the JSFunctionAttribute is not emitted. 

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

Community Additions