public TypeState(DmdType type, string typeExpression)
 {
     Type            = type;
     Flags           = TypeStateFlags.None;
     TypeExpression  = typeExpression;
     HasNoChildren   = true;
     InstanceMembers = MemberValueNodeInfoCollection.Empty;
     StaticMembers   = MemberValueNodeInfoCollection.Empty;
     TupleFields     = Array.Empty <TupleField>();
 }
 public TypeState(DmdType type, string typeExpression, MemberValueNodeInfoCollection instanceMembers, MemberValueNodeInfoCollection staticMembers, TupleField[] tupleFields)
 {
     Type            = type;
     EnumerableType  = GetEnumerableType(type);
     Flags           = GetFlags(type, tupleFields);
     TypeExpression  = typeExpression;
     HasNoChildren   = false;
     InstanceMembers = instanceMembers;
     StaticMembers   = staticMembers;
     TupleFields     = tupleFields;
 }