I'm experimenting with a V8 engine.
This function exists to compare types in V8 (full-code-x64.cc):
Zero FullCodeGenerator :: EmitLiteralCompareTypeof (expression * expr, expression
If for example:
Obj == "object" type of the sub_expr, handle of Type
then sub_expr one expression object "typeob Obj" and check Is an "item" .
How do - not possible (you can not. An expression syntax is a piece of Andreas Rossberg)
By zero, we can get a JSObject that it can check:
is the OBZ function __CMPObject type (RAX, JS_FONTETIIPEPERDX); The Obj proxy function is __CmpInstanceType (rdx, JS_FUNCTION_PROXY_TYPE); Obj Proxy is __CmpObjectType (rack, FIRST_NONCALLABLE_SPEC_OBJECT_TYPE, RDX); And etc ... Just for example if we will use this code: __CmpObjectType (racks, FIRST_NONCALLABLE_SPEC_OBJECT_TYPE, rdx); __j (equal to, if_true); Type type Proxy_Obj == 'string' --- & gt; True
How does V8 know about this? This means - V8 run code
You can not do An expression is a piece of syntax, a JSObject is a runtime object. They have nothing to do with each other.
No comments:
Post a Comment