Since Promise values are natively reference counted without the knowledge of the SpiderMonkey GC, an explicit root for the reflector is stored while any native instance exists. This ensures that the reflector will never be GCed while native code could still interact with its native representation.
This is used in a type assertion to ensure that the source and webidls agree as to what the parent type is
JSVal. JSAPI failure causes a panic.
Returns the argument unchanged.