Exemple #1
0
 public void WriteValue(LuaValue value)
 {
     Write((int)value.Type);
     if (value.Type == LuaValueType.NUMBER)
     {
         WriteNumber(value.AsNumber());
     }
     else
     {
         WriteObjectID(value.Value);
     }
 }
Exemple #2
0
        public string GetValueString(LuaValue luaValue)
        {
            if (luaValue == null)
            {
                return("");
            }

            switch (luaValue.Type)
            {
            case LuaValueType.NIL:
                return("nil");

            case LuaValueType.BOOLEAN:
                return(luaValue.AsBoolean().ToString());

            case LuaValueType.NUMBER:
                return(luaValue.AsNumber().ToString("R"));

            case LuaValueType.TILDE_METATABLE:
                return("metatable");

            case LuaValueType.TILDE_ENVIRONMENT:
                return("environment");

            case LuaValueType.TILDE_UPVALUES:
                return("upvalues");

            default:
                if (mValueCache.Contains(luaValue))
                {
                    return(mValueCache.Get(luaValue));
                }
                else
                {
                    return("Unknown:" + luaValue.ToString());
                }
            }
        }