Wiki
Show
Ignore:
Timestamp:
03/08/10 06:19:46 (2 years ago)
Author:
Chuck.Esterbrook
Message:

Code cleanup. In CobraType?.memberForName, assert that the type .didBindInh and .didBindInt. Also, create all nilable types through .typeProvider.nilableType(t) and cache.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • cobra/trunk/Source/TypeProxies.cobra

    r2277 r2304  
    8484 
    8585    get realType as IType is override 
    86         return NilableType(_innerType.realType) 
     86        return .typeProvider.nilableType(_innerType.realType) 
    8787 
    8888 
     
    267267                    if member.qualifiedName == 'System.Nullable<of>' 
    268268                        assert args.count == 1 
    269                         member = NilableType(args[0]) 
     269                        member = .typeProvider.nilableType(args[0]) 
    270270                    else 
    271271                        member = (member to Box).constructedTypeFor(args) 
     
    472472 
    473473    def _resolveType as IType is override 
    474         return ArrayType(_typeId.realType) 
     474        t = ArrayType(_typeId.realType) 
     475        t.bindInh 
     476        t.bindInt 
     477        return t 
    475478 
    476479 
     
    485488 
    486489    def _resolveType as IType is override 
    487         return NilableType(_typeId.realType) 
     490        return .typeProvider.nilableType(_typeId.realType) 
    488491 
    489492    get name as String is override 
     
    493496        m = container.memberForName(.name[:-1]) 
    494497        if m inherits IType 
    495             return NilableType(m) 
     498            return .typeProvider.nilableType(m) 
    496499        else 
    497500            return m