Пример #1
0
        public void Put(object k, object v)
        {
            LuaValue key;
            LuaValue value;

            if (k is LuaValue kl)
            {
                key = kl;
            }
            else
            {
                key = LuaValue.Create(k);
            }

            if (v is LuaValue vl)
            {
                value = vl;
            }
            else
            {
                value = LuaValue.Create(v);
            }

            Put(key, value);
        }
Пример #2
0
        private void InitKeys()
        {
            _keys = new Dictionary <object, LuaValue>();
            object key = KeysHead;

            if (_arr != null)
            {
                for (var i = 0; i < _arr.Count; i++)
                {
                    var value = _arr[i];
                    if (value.GetValue() != null)
                    {
                        var newValue = new LuaValue((LuaInt)(i + 1));
                        ;
                        _keys.Add(key, newValue);
                        key = newValue.GetValue();
                    }
                }
            }

            if (_map != null)
            {
                foreach (var kv in _map)
                {
                    if (kv.Value != null)
                    {
                        var value = LuaValue.Create(kv.Key);
                        _keys.Add(key, value);
                        key = value.GetValue();
                    }
                }
            }

            _lastKey = key;
        }
Пример #3
0
 public LuaValue Get(object key)
 {
     return(Get(LuaValue.Create(key)));
 }