33 lines
551 B
C#
33 lines
551 B
C#
namespace AspClassic.Scripting.Runtime;
|
|
|
|
internal abstract class BaseSymbolDictionary
|
|
{
|
|
private const int ObjectKeysId = -2;
|
|
|
|
private static readonly object _nullObject = new object();
|
|
|
|
internal static readonly SymbolId ObjectKeys = new SymbolId(-2);
|
|
|
|
public static object NullToObj(object o)
|
|
{
|
|
if (o == null)
|
|
{
|
|
return _nullObject;
|
|
}
|
|
return o;
|
|
}
|
|
|
|
public static object ObjToNull(object o)
|
|
{
|
|
if (o == _nullObject)
|
|
{
|
|
return null;
|
|
}
|
|
return o;
|
|
}
|
|
|
|
public static bool IsNullObject(object o)
|
|
{
|
|
return o == _nullObject;
|
|
}
|
|
}
|