Do not alias UniqueTag.NULL_VALUE as IdScriptable.NULL_TAG and use it directly
git-svn-id: svn://10.0.0.236/trunk@118562 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
0363f88908
commit
cd133cdc1e
@ -133,7 +133,7 @@ public class BaseFunction extends IdScriptable implements Function {
|
||||
|
||||
protected void setIdValue(int id, Object value) {
|
||||
if (id == Id_prototype) {
|
||||
prototypeProperty = (value != null) ? value : NULL_TAG;
|
||||
prototypeProperty = (value != null) ? value : UniqueTag.NULL_VALUE;
|
||||
return;
|
||||
}
|
||||
super.setIdValue(id, value);
|
||||
@ -188,7 +188,7 @@ public class BaseFunction extends IdScriptable implements Function {
|
||||
* prototype property of this Function object
|
||||
*/
|
||||
public void setImmunePrototypeProperty(Object value) {
|
||||
prototypeProperty = (value != null) ? value : NULL_TAG;
|
||||
prototypeProperty = (value != null) ? value : UniqueTag.NULL_VALUE;
|
||||
prototypePropertyAttrs = DONTENUM | READONLY | PERMANENT;
|
||||
}
|
||||
|
||||
@ -280,7 +280,7 @@ public class BaseFunction extends IdScriptable implements Function {
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (result == NULL_TAG) { result = null; }
|
||||
else if (result == UniqueTag.NULL_VALUE) { result = null; }
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@ -59,11 +59,6 @@ may override scopeInit or fillConstructorProperties methods.
|
||||
public abstract class IdScriptable extends ScriptableObject
|
||||
implements IdFunctionMaster
|
||||
{
|
||||
/** NULL_TAG can be used to distinguish between uninitialized and null
|
||||
** values
|
||||
*/
|
||||
protected static final Object NULL_TAG = UniqueTag.NULL_VALUE;
|
||||
|
||||
public boolean has(String name, Scriptable start) {
|
||||
if (maxId != 0) {
|
||||
int id = mapNameToId(name);
|
||||
@ -97,7 +92,7 @@ public abstract class IdScriptable extends ScriptableObject
|
||||
if (value == null) {
|
||||
value = getIdValue(id);
|
||||
}
|
||||
else if (value == NULL_TAG) {
|
||||
else if (value == UniqueTag.NULL_VALUE) {
|
||||
value = null;
|
||||
}
|
||||
return value;
|
||||
@ -117,7 +112,7 @@ public abstract class IdScriptable extends ScriptableObject
|
||||
if (value == null) {
|
||||
value = getIdValue(id);
|
||||
}
|
||||
else if (value == NULL_TAG) {
|
||||
else if (value == UniqueTag.NULL_VALUE) {
|
||||
value = null;
|
||||
}
|
||||
return value;
|
||||
@ -310,7 +305,8 @@ public abstract class IdScriptable extends ScriptableObject
|
||||
*/
|
||||
protected void setIdValue(int id, Object value) {
|
||||
synchronized (this) {
|
||||
ensureIdData()[id - 1] = (value != null) ? value : NULL_TAG;
|
||||
Object[] data = ensureIdData();
|
||||
data[id - 1] = (value != null) ? value : UniqueTag.NULL_VALUE;
|
||||
}
|
||||
}
|
||||
|
||||
@ -324,7 +320,7 @@ public abstract class IdScriptable extends ScriptableObject
|
||||
Object[] data = ensureIdData();
|
||||
Object curValue = data[id - 1];
|
||||
if (curValue == null) {
|
||||
data[id - 1] = (value != null) ? value : NULL_TAG;
|
||||
data[id - 1] = (value != null) ? value : UniqueTag.NULL_VALUE;
|
||||
}
|
||||
else {
|
||||
value = curValue;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user