type listUnstructured … func (l listUnstructured) Length() int { … } func (l listUnstructured) At(i int) Value { … } func (l listUnstructured) AtUsing(a Allocator, i int) Value { … } func (l listUnstructured) Equals(other List) bool { … } func (l listUnstructured) EqualsUsing(a Allocator, other List) bool { … } func (l listUnstructured) Range() ListRange { … } func (l listUnstructured) RangeUsing(a Allocator) ListRange { … } type listUnstructuredRange … func (r *listUnstructuredRange) Next() bool { … } func (r *listUnstructuredRange) Item() (index int, value Value) { … }