public LuaTransparentClrObject(object obj, ILuaBinder binder, IBindingSecurityPolicy bindingSecurityPolicy) : base(obj)
        {
            Binder = binder ?? BasicLuaBinder.Instance;
            BindingSecurityPolicy = bindingSecurityPolicy ?? defaultSecurityPolicy;

            proxy = new TransparentClrObjectProxy(this);
        }
        public CombinedBindingSecurityPolicy(IBindingSecurityPolicy first, IBindingSecurityPolicy second)
        {
            if (first == null) { throw new ArgumentNullException("first"); }
            if (second == null) { throw new ArgumentNullException("second"); }

            FirstPolicy = first;
            SecondPolicy = second;
        }
示例#3
0
        public LuaTransparentClrObject(object obj, ILuaBinder binder = null, IBindingSecurityPolicy bindingSecurityPolicy = null) : base(obj)
        {
            Binder = binder ?? BasicLuaBinder.Instance;
            if (bindingSecurityPolicy == null) {
                if (Binder is ReflectionLuaBinder) {
                    BindingSecurityPolicy = defaultReflectionBindingSecurityPolicy;
                } else {
                    BindingSecurityPolicy = defaultBasicBindingSecurityPolicy;
                }
            } else BindingSecurityPolicy = bindingSecurityPolicy;

            proxy = new TransparentClrObjectProxy(this);
        }
示例#4
0
        public LuaClrTypeObject(Type type, IBindingSecurityPolicy binding_security_policy = null) : base(type)
        {
            if (binding_security_policy != null)
            {
                BindingSecurityPolicy = binding_security_policy;
            }
            else
            {
                BindingSecurityPolicy = defaultSecurityPolicy;
            }

            Type  = type;
            proxy = new LuaClrTypeObjectProxy(this, type);
        }
        public CombinedBindingSecurityPolicy(IBindingSecurityPolicy first, IBindingSecurityPolicy second)
        {
            if (first == null)
            {
                throw new ArgumentNullException("first");
            }
            if (second == null)
            {
                throw new ArgumentNullException("second");
            }

            FirstPolicy  = first;
            SecondPolicy = second;
        }
示例#6
0
 public LuaTransparentClrObject(object obj, bool autobind, IBindingSecurityPolicy bindingSecurityPolicy = null) : this(obj, BasicLuaBinder.Instance) {
     if (autobind) {
         Binder = ReflectionLuaBinder.Instance;
         BindingSecurityPolicy = bindingSecurityPolicy ?? defaultReflectionBindingSecurityPolicy;
     }
 }