AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Entry:     JS_DefinePropertyWithTinyId (Function)
Summary:     Creates a single property for a specified object and assigns it an ID number.
Syntax:
JSBool JS_DefinePropertyWithTinyId( JSContext *cx,
JSObject *obj, const char *name, int8 tinyid, jsval value,
JSPropertyOp getter, JSPropertyOp setter, uintN flags);

     Argument     Type     Description
     cx     JSContext *     Pointer to a JS context from which to derive runtime information.
                 
     obj     JSObject *     Object for which to create the new property.
                 
     name     const char *     Name for the property to create.
                 
     tinyid     int8     8-bit ID to aid in sharing getProperty/setProperty methods among properties.
                 
     value     jsval     Initial value to assign to the property.
                 
     getter     JSPropertyOp     getProperty method for retrieving the current property value.
                 
     setter     JSPropertyOp     setProperty method for specifying a new property value.
                 
     flags     uintN     Property flags.
                 
Description:
JS_DefinePropertyWithTinyId defines a single property for a specified object, obj.

name is the name to assign to the property in the object. value is a jsval that defines the property's data type and initial value.

tinyid is an 8-bit value that simplifies determining which property to access, and is especially useful in getProperty and setProperty methods that are shared by a number of different properties.

getter and setter identify the getProperty and setProperty methods for the property, respectively. If you pass null values for these entries, JS_DefinePropertyWithTinyId assigns the default getProperty and setProperty methods to this property. flags contains the property flags to set for the newly created property. The following table lists possible values you can pass in flags, either singly, or OR'd together: TABLE BORDER="0" TRTD VALIGN='baseline' ALIGN='left' BFlag /B/TDTD VALIGN='baseline' ALIGN='left' BPurpose /B /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_ENUMERATE/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property is visible in Bfor/B and Bin/B loops./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_READONLY/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property is read only./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_PERMANENT/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property cannot be deleted./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_EXPORTED/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property can be imported by other objects./P /TD/TRTR TD VALIGN='baseline' ALIGN='left'P CODEJSPROP_INDEX/CODE/TDTD VALIGN='baseline' ALIGN='left'P Property is actually an index into an array of properties, and is cast to a CODEconst char */CODE./P /TD/TR/TABLE  

If it successfully creates the property, JS_DefinePropertyWithTinyId returns JS_TRUE. If the property already exists, or cannot be created, it returns JS_FALSE.


See also:
JS_DefineConstDoubles
JS_DefineElement
JS_DefineFunction
JS_DefineFunctions
JS_DefineObject
JS_DefineProperties
JS_DefineProperty
JS_DefineUCProperty
JS_DefineUCPropertyWithTinyID

[sh-index] Back to list of manuals