func (s *StructType) Type() reflect.Type {
    fields := make([]reflect.StructField, len(s.Members))
    var offset uintptr = 0
    for i, m := range s.Members {
        typ := m.Type.Type()