iterator.go
func (it *Iterator) SetMeta(meta uint16) error {
	// Try to reuse the same value bytes. Do this only in the case where meta
	// is increasing, in order to avoid cases where the meta is changed, then
	// changed back to the original value, which would make it impossible to
	// detect updates had occurred in the interim.
	if meta > decodeMeta(it.value) {
		valOffset, valSize := decodeValue(it.value)
		new := encodeValue(valOffset, valSize, meta)
		return it.trySetValue(new)
	}

	return it.Set(it.Value(), meta)
}
func (it *Iterator) SetMeta(meta uint16) error {
	// Try to reuse the same value bytes. Do this only in the case where meta
	// is increasing, in order to avoid cases where the meta is changed, then
	// changed back to the original value, which would make it impossible to
	// detect updates had occurred in the interim.
	if meta > decodeMeta(it.value) {
		valOffset, valSize := decodeValue(it.value)
		new := encodeValue(valOffset, valSize, meta)
		return it.trySetValue(new)
	}

	return it.Set(it.Value(), meta)
}
func ( it * Iterator ) SetMeta ( meta uint16 ) error { // Try to reuse the same value bytes. Do this only in the case where meta // is increasing, in order to avoid cases where the meta is changed, then // changed back to the original value, which would make it impossible to // detect updates had occurred in the interim. if meta > decodeMeta ( it . value ) { valOffset , valSize := decodeValue ( it . value ) new := encodeValue ( valOffset , valSize , meta ) return it . trySetValue ( new ) } return it . Set ( it . Value ( ) , meta ) }
// SetMeta updates the meta value of the current iteration record if it has not
// been updated or deleted since iterating or seeking to it. If the record has
// been updated, then SetMeta positions the iterator on the most current value
// and returns ErrRecordUpdated. If the record has been deleted, then SetMeta
// keeps the iterator positioned on the current record with the current value
// and returns ErrRecordDeleted.
SetMeta updates the meta value of the current iteration record if it has not been updated or deleted since iterating or seeking to it . If the record has been updated then SetMeta positions the iterator on the most current value and returns ErrRecordUpdated . If the record has been deleted then SetMeta keeps the iterator positioned on the current record with the current value and returns ErrRecordDeleted .