empty
    {{ size={Size} }}
    
      - Size
- CapacitySize
        ($T1*)BeginX
      
    
  
  
  
    
    {(($T1*)BeginX)[0]}{*this,view(elt1)}
    
    , {(($T1*)BeginX)[1]}{*this,view(elt2)}
    
    , {(($T1*)BeginX)[2]}{*this,view(elt3)}
    
    , {(($T1*)BeginX)[3]}{*this,view(elt4)}
    
    , /* {Size - 4} more*/ 
    empty
    {{{*this,view(elt0)}}}
    Uninitialized
- Size
- CapacitySize
        ($T1*)BeginX
      
    
  
  
    empty
    {{ size={Length} }}
- LengthLength
        Data
      
    
  
  
    {(const char*)BeginX,[Size] na}
    (const char*)BeginX,[Size]
- Size
- CapacitySize
        (char*)BeginX
      
    
  
  
    {First,[Last - First]s}
  
  
  
    {Data,[Length]s}
    Data,[Length]s
- LengthLength
        Data
      
    
  
  
    {$T5::IntMask}: {($T1)(Value & $T5::PointerBitMask)} [{($T3)((Value >> $T5::IntShift) & $T5::IntMask)}]
- ($T1)(Value & $T5::PointerBitMask)
- ($T3)((Value >> $T5::IntShift) & $T5::IntMask){"$T1", s8b}: {($T1)(Val.Value & ValTy::InfoTy::PointerBitMask)}
    {"$T2", s8b}: {($T2)(Val.Value & ValTy::InfoTy::PointerBitMask)}
- "$T1", s8b
- ($T1)(Val.Value & ValTy::InfoTy::PointerBitMask)
- "$T2", s8b
- ($T2)(Val.Value & ValTy::InfoTy::PointerBitMask){"$T3", s8b}: {($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)}
    {*(InnerUnion*)&Val.Val.Value}
- "$T3", s8b
- ($T3)(Val.Val.Value & ValTy::ValTy::InfoTy::PointerBitMask)*(InnerUnion*)&Val.Val.Value
    
  
  
    
      {"$T1", s8b}: {($T1)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)}
    
    
      {"$T2", s8b}: {($T2)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)}
    
    
      {"$T3", s8b}: {($T3)(Val.Val.Value & InnerUnion2::ValTy::InfoTy::PointerBitMask)}
    
    
      {"$T4", s8b}: {($T4)(Val.Val.Value & InnerUnion2::ValTy::InfoTy::PointerBitMask)}
- 
        "$T1", s8b
      
- 
        ($T1)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
      
- 
        "$T2", s8b
      
- 
        ($T2)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
      
- 
        "$T3", s8b
      
- 
        ($T3)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
      
- 
        "$T4", s8b
      
- 
        ($T4)(Val.Val.Value & InnerUnion1::ValTy::InfoTy::PointerBitMask)
      {{ empty }}
    {{ head={Head} }}
    
      
        Head
        Next
        this
      
    
  
  
    empty
    RefPtr [1 ref] {*Obj}
    RefPtr [{Obj->ref_cnt} refs] {*Obj}
- Obj->ref_cntObj
    
  
  
    {{ [Small Mode] size={NumElements}, capacity={CurArraySize} }}
    {{ [Big Mode] size={NumElements}, capacity={CurArraySize} }}
- NumElements
- CurArraySizeCurArraySize
        ($T1*)CurArray
      
    
  
  
    empty
    {{ size={NumEntries}, buckets={NumBuckets} }}
- NumEntries
- NumBucketsNumBuckets
        Buckets
      
    
  
  
    {{ size={NumItems}, buckets={NumBuckets} }}
- NumItems
- NumBucketsNumBuckets
        (MapEntryTy**)TheTable
      
    
  
  
    empty
    ({this+1,s}, {second})
- this+1,s
- second{Data}
  
  
  
    None
    {*(($T1 *)(unsigned char *)Storage.storage.buffer)}
- *(($T1 *)(unsigned char *)Storage.storage.buffer)Error
    {*((storage_type *)TStorage.buffer)}
- *((storage_type *)TStorage.buffer)
- *((error_type *)ErrorStorage.buffer){{little endian value = {*(($T1*)(unsigned char *)Value.buffer)} }}
- (unsigned char *)Value.buffer,1
- (unsigned char *)Value.buffer,2
- (unsigned char *)Value.buffer,4
- (unsigned char *)Value.buffer,8{{ big endian value = {*(unsigned char *)Value.buffer} }}
    {{ big endian value = {(($T1)(*(unsigned char *)Value.buffer) << 8) 
                                                                    | ($T1)(*((unsigned char *)Value.buffer+1))} }}
    {{ big endian value = {(($T1)(*(unsigned char *)Value.buffer) << 24) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+1)) << 16) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+2)) << 8) 
                                                                    |  ($T1)(*((unsigned char *)Value.buffer+3))} }}
    {{ big endian value = {(($T1)(*(unsigned char *)Value.buffer) << 56) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+1)) << 48) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+2)) << 40) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+3)) << 32) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+4)) << 24) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+5)) << 16) 
                                                                    | (($T1)(*((unsigned char *)Value.buffer+6)) << 8) 
                                                                    |  ($T1)(*((unsigned char *)Value.buffer+7))} }}
- (unsigned char *)Value.buffer,1
- (unsigned char *)Value.buffer,2
- (unsigned char *)Value.buffer,4
- (unsigned char *)Value.buffer,8