예제 #1
0
        private bool IsValidErasedType(TypeMirror actualType)
        {
            return(_whitelistedTypes.Any(type =>
            {
                TypeMirror erasedAllowedType = _typeUtils.erasure(type);

                TypeMirror map = _typeUtils.erasure(_typeMirrors.typeMirror(typeof(System.Collections.IDictionary)));
                TypeMirror list = _typeUtils.erasure(_typeMirrors.typeMirror(typeof(System.Collections.IList)));
                if (_typeUtils.isSameType(erasedAllowedType, map) || _typeUtils.isSameType(erasedAllowedType, list))
                {
                    return _typeUtils.isSubtype(actualType, erasedAllowedType);
                }

                return _typeUtils.isSameType(actualType, erasedAllowedType);
            }));
        }
예제 #2
0
 public virtual TypeMirror TypeOf(Type type)
 {
     return(_typeMirrors.typeMirror(type));
 }