示例#1
0
        public override void ReturnToPool()
        {
            TypeObjectWrapper.ReturnToPool();
#if ENABLE_OBJ_POOL
            Pool.ReturnToPool(this);
#endif
        }
    void SetTypeObjectWrapperValue(SerializedProperty objectWrapper, System.Type pValueType)
    {
        TypeObjectWrapper.valueType vt = TypeObjectWrapper.getValueType(pValueType);
        objectWrapper.FindPropertyRelative("_currentValueType").enumValueIndex = (int)vt;
        //SerializedProperty prop = objectWrapper.FindPropertyRelative(TypeObjectWrapper._valueString[vt]);

        return;
    }
示例#3
0
 protected internal override bool SetFieldImp(object key, object val)
 {
     if (BindingCore != null)
     {
         var rv = BindingCore.SetFieldFor(null, key, val);
         if (rv)
         {
             return(rv);
         }
     }
     return(TypeObjectWrapper.SetFieldImp(key, val));
 }
示例#4
0
 protected internal override object GetFieldImp(object key)
 {
     if (BindingCore != null)
     {
         string strkey = key.UnwrapDynamic <string>();
         if ("___ol" == strkey)
         {
             return(BindingCore.CreateOverloadSelector(null));
         }
         else if ("___ctor" == strkey)
         {
             return(ClrCallable.GetFromPool(BindingCore, null));
         }
         var rv = BindingCore.GetFieldFor(null, key);
         if (rv != null)
         {
             return(rv);
         }
     }
     return(TypeObjectWrapper.GetFieldImp(key));
 }