예제 #1
0
        override public bool Equals(object other)
        {
            ExternalMethod rhs = other as ExternalMethod;

            if (null == rhs)
            {
                return(false);
            }
            return(_mi.MethodHandle.Value == rhs._mi.MethodHandle.Value);
        }
예제 #2
0
 public MixedGenericMethod(TypeSystemServices tss, ExternalMethod definition, IType[] arguments) : base(tss, definition.MethodInfo)
 {
     _definition  = definition;
     _arguments   = arguments;
     _constructed = IsConstructed();
     _typeMapper  = new GenericTypeMapper(
         tss,
         definition.GenericMethodDefinitionInfo.GenericParameters,
         arguments);
 }
예제 #3
0
        public IMethod Map(MethodInfo method)
        {
            object  key    = GetCacheKey(method);
            IMethod entity = (IMethod)_entityCache[key];

            if (null == entity)
            {
                entity            = new ExternalMethod(this, method);
                _entityCache[key] = entity;
            }
            return(entity);
        }
예제 #4
0
        public bool Equals(ExternalMethod other)
        {
            if (null == other)
            {
                return(false);
            }
            if (this == other)
            {
                return(true);
            }

            return(_memberInfo.MethodHandle.Value == other._memberInfo.MethodHandle.Value);
        }
예제 #5
0
        override public bool Equals(object other)
        {
            if (null == other)
            {
                return(false);
            }
            if (this == other)
            {
                return(true);
            }

            ExternalMethod method = other as ExternalMethod;

            return(Equals(method));
        }
예제 #6
0
        public bool Equals(ExternalMethod other)
        {
            if (null == other)
            {
                return(false);
            }
            if (this == other)
            {
                return(true);
            }

#if DNXCORE50
            return(_memberInfo.MetadataToken == other._memberInfo.MetadataToken);
#else
            return(_memberInfo.MethodHandle.Value == other._memberInfo.MethodHandle.Value);
#endif
        }
 public ExternalGenericMethodInfo(IReflectionTypeSystemProvider provider, ExternalMethod method) : base(provider)
 {
     _method = method;
 }
 public ExternalGenericMethodDefinitionInfo(TypeSystemServices tss, ExternalMethod method) :     base(tss)
 {
     _method = method;
 }
예제 #9
0
 public ExternalConstructedMethodInfo(TypeSystemServices tss, ExternalMethod method)
 {
     _method = method;
     _tss    = tss;
 }
 public ExternalConstructedMethodInfo(IReflectionTypeSystemProvider tss, ExternalMethod method)
 {
     _method = method;
     _tss    = tss;
 }
예제 #11
0
 public ExternalGenericMethodInfo(TypeSystemServices tss, ExternalMethod method)
 {
     _method = method;
     _tss    = tss;
 }