Exemplo n.º 1
0
 static LuaObject EvalVariable(Variable Expression, LuaContext Context)
 {
     if (Expression.Prefix == null)
     {
         return(Context.Get(Expression.Name));
     }
     else
     {
         LuaObject prefix = EvalExpression(Expression.Prefix, Context)[0];
         return(prefix[Expression.Name]);
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// Returns the nearest declared variable value or nil
        /// </summary>
        public LuaObject Get(string Name)
        {
            var obj = LuaObject.Nil;

            if (variables.TryGetValue(Name, out obj) || parent == null)
            {
                return(obj);
            }
            else
            {
                return(parent.Get(Name));
            }
        }
Exemplo n.º 3
0
        public override bool TryGetMember(GetMemberBinder binder, out object result)
        {
            result = null;
            LuaObject obj = ctx.Get(binder.Name);

            if (obj.IsNil)
            {
                return(false);
            }
            else
            {
                result = LuaObject.getObject(obj);
                return(true);
            }
        }