JavaScriptCore C++ 名称变更
以下是我们计划对 JavaScriptCore 中 KJS 命名空间里的一些类和函数进行的名称变更
| 旧名称 | 新名称 |
|---|---|
| ValueImp | JSValue |
| AllocatedValueImp | JSCell |
| ObjectImp | JSObject |
| Undefined() | jsUndefined() |
| Null() | jsNull() |
| Boolean() | jsBoolean(), jsTrue(), jsFalse() |
| Number() | jsNumber(), jsNaN(), jsZero(), jsOne(), jsTwo() |
| String() | jsString() |
我们希望移除 ObjectImp 和 JSObject 子类的类名中的 Imp 后缀。
我们计划淘汰 UndefinedImp、NullImp 和 BooleanImp 类,并改用特殊的指针值,有点类似于 SimpleNumber 的用法。这将使得通过与常量比较来检查值是否未定义成为可能,这会比目前的方式更小更快。