示例#1
0
 public static ReflectedType MakeDynamicType()
 {
     if (ComplexType == null)
     {
         ReflectedType res = new OpsReflectedType("complex", typeof(Complex64), typeof(ComplexOps), typeof(ExtensibleComplex));
         if (System.Threading.Interlocked.CompareExchange <ReflectedType>(ref ComplexType, res, null) == null)
         {
             return(res);
         }
     }
     return(ComplexType);
 }
示例#2
0
        public static ReflectedType MakeDynamicType()
        {
            if (LongType == null)
            {
                ReflectedType res = new OpsReflectedType("long", typeof(BigInteger), typeof(LongOps), typeof(ExtensibleLong));

                if (Interlocked.CompareExchange <ReflectedType>(ref LongType, res, null) == null)
                {
                    return(res);
                }
            }
            return(LongType);
        }
示例#3
0
        public static ReflectedType MakeDynamicType(ReflectedType type)
        {
            if (BoolType == null)
            {
                OpsReflectedType ret = new OpsReflectedType("bool", typeof(bool), typeof(BoolOps), null, new CallTarget1(FastNew));
                if (Interlocked.CompareExchange <ReflectedType>(ref BoolType, ret, null) == null)
                {
                    return(ret);
                }
            }

            return(BoolType);
        }