typed_blob_store

package
v0.0.0-...-791c77c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 11, 2025 License: MIT Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakeBlobFormat2

func MakeBlobFormat2[
	O any,
](
	decoder interfaces.DecoderFrom[O],
	encoder interfaces.EncoderTo[O],
	blobReader interfaces.BlobReader,
) interfaces.Format[O]

func MakeNopBlobParseSaver

func MakeNopBlobParseSaver[
	O any,
	OPtr interfaces.Ptr[O],
](awf interfaces.BlobWriter,
) nopBlobParseSaver[O, OPtr]

func MakeSavedBlobFormatter

func MakeSavedBlobFormatter(
	blobReaderFactory interfaces.BlobReader,
) savedBlobFormatter

func MakeTextFormatter

func MakeTextFormatter(
	envRepo env_repo.Env,
	options checkout_options.TextFormatterOptions,
	inlineTypeChecker ids.InlineTypeChecker,
	checkoutMode checkout_mode.Mode,
) textFormatter

func MakeTextFormatterWithBlobFormatter

func MakeTextFormatterWithBlobFormatter(
	envRepo env_repo.Env,
	options checkout_options.TextFormatterOptions,
	inlineTypeChecker ids.InlineTypeChecker,
	formatter script_config.RemoteScript,
	checkoutMode checkout_mode.Mode,
) textFormatter

func MakeTextParserIgnoreTomlErrors2

func MakeTextParserIgnoreTomlErrors2[
	O any,
	OPtr interfaces.Ptr[O],
](awf interfaces.BlobWriter,
) tomlBlobParseSaver2[O]

func MakeTomlBlobDecoderSaver

func MakeTomlBlobDecoderSaver[
	O any,
	OPtr interfaces.Ptr[O],
](
	blobWriter interfaces.BlobWriter,
) tomlBlobDecoder[O, OPtr]

func MakeTomlBlobParseSaver2

func MakeTomlBlobParseSaver2[
	O any,
](awf interfaces.BlobWriter,
) tomlBlobParseSaver2[O]

func MakeTomlDecoderIgnoreTomlErrors

func MakeTomlDecoderIgnoreTomlErrors[
	O any,
	OPtr interfaces.Ptr[O],
](awf interfaces.BlobWriter,
) tomlBlobDecoder[O, OPtr]

Types

type ApproximatedType

type ApproximatedType struct {
	HasValue bool
	IsActual bool
	Type     *sku.Transacted
}

func (ApproximatedType) ActualOrNil

func (a ApproximatedType) ActualOrNil() (actual *sku.Transacted)

func (ApproximatedType) ApproximatedOrActual

func (a ApproximatedType) ApproximatedOrActual() *sku.Transacted

type BlobStore

type BlobStore[
	A any,
	APtr interfaces.Ptr[A],
] struct {
	Format[A, APtr]
	// contains filtered or unexported fields
}

func MakeBlobStore

func MakeBlobStore[
	A any,
	APtr interfaces.Ptr[A],
](
	repoLayout env_repo.Env,
	format Format[A, APtr],
	resetFunc func(APtr),
) (s *BlobStore[A, APtr])

func (*BlobStore[A, APtr]) GetBlob

func (s *BlobStore[A, APtr]) GetBlob(
	sh interfaces.Sha,
) (a APtr, err error)

func (*BlobStore[A, APtr]) PutBlob

func (s *BlobStore[A, APtr]) PutBlob(a APtr)

func (*BlobStore[A, APtr]) SaveBlobText

func (h *BlobStore[A, APtr]) SaveBlobText(
	o APtr,
) (sh interfaces.Sha, n int64, err error)

type Config

type Config struct {
	// contains filtered or unexported fields
}

func MakeConfigStore

func MakeConfigStore(
	repoLayout env_repo.Env,
) Config

func (Config) FormatTypedBlob

func (a Config) FormatTypedBlob(
	tg sku.TransactedGetter,
	w io.Writer,
) (n int64, err error)

func (Config) ParseTypedBlob

func (a Config) ParseTypedBlob(
	tipe ids.Type,
	blobSha interfaces.Sha,
) (common config_mutable_blobs.Blob, n int64, err error)

func (Config) PutTypedBlob

func (a Config) PutTypedBlob(
	tipe interfaces.ObjectId,
	common config_mutable_blobs.Blob,
) (err error)

type Format

type Format[T any, TPtr interfaces.Ptr[T]] interface {
	interfaces.SavedBlobFormatter
	interfaces.Coder[TPtr]
}

func MakeBlobFormat

func MakeBlobFormat[
	O any,
	OPtr interfaces.Ptr[O],
](
	decoder interfaces.DecoderFrom[OPtr],
	encoder interfaces.EncoderTo[OPtr],
	blobReader interfaces.BlobReader,
) Format[O, OPtr]

type InventoryList

type InventoryList struct {
	// contains filtered or unexported fields
}

func MakeInventoryStore

func MakeInventoryStore(
	dirLayout env_repo.Env,
	objectFormat object_inventory_format.Format,
	boxFormat *box_format.BoxTransacted,
) InventoryList

func (InventoryList) AllDecodedObjectsFromStream

func (a InventoryList) AllDecodedObjectsFromStream(
	reader io.Reader,
) iter.Seq2[*sku.Transacted, error]

func (InventoryList) GetBoxFormat

func (a InventoryList) GetBoxFormat() *box_format.BoxTransacted

func (InventoryList) GetCommonStore

func (a InventoryList) GetCommonStore() sku.BlobStore[*sku.List]

func (InventoryList) GetObjectFormat

func (a InventoryList) GetObjectFormat() object_inventory_format.Format

func (InventoryList) GetTransactedWithBlob

func (a InventoryList) GetTransactedWithBlob(
	tg sku.TransactedGetter,
) (twb sku.TransactedWithBlob[*sku.List], n int64, err error)

func (InventoryList) GetTransactedWithBlobFromReader

func (a InventoryList) GetTransactedWithBlobFromReader(
	twb *sku.TransactedWithBlob[*sku.List],
	reader io.Reader,
) (n int64, err error)

func (InventoryList) IterInventoryListBlobSkusFromBlobStore

func (a InventoryList) IterInventoryListBlobSkusFromBlobStore(
	tipe ids.Type,
	blobStore interfaces.BlobStore,
	blobSha interfaces.Sha,
) iter.Seq2[*sku.Transacted, error]

func (InventoryList) IterInventoryListBlobSkusFromReader

func (a InventoryList) IterInventoryListBlobSkusFromReader(
	tipe ids.Type,
	reader io.Reader,
) iter.Seq2[*sku.Transacted, error]

func (InventoryList) PutTransactedWithBlob

func (a InventoryList) PutTransactedWithBlob(
	twb sku.TransactedWithBlob[*sku.List],
) (err error)

func (InventoryList) ReadInventoryListBlob

func (a InventoryList) ReadInventoryListBlob(
	tipe ids.Type,
	reader io.Reader,
) (list *sku.List, err error)

func (InventoryList) ReadInventoryListObject

func (a InventoryList) ReadInventoryListObject(
	tipe ids.Type,
	reader io.Reader,
) (out *sku.Transacted, err error)

func (InventoryList) StreamInventoryListBlobSkus

func (a InventoryList) StreamInventoryListBlobSkus(
	transactedGetter sku.TransactedGetter,
) iter.Seq2[*sku.Transacted, error]

func (InventoryList) WriteBlobToWriter

func (a InventoryList) WriteBlobToWriter(
	tipe ids.Type,
	list sku.Collection,
	w io.Writer,
) (n int64, err error)

func (InventoryList) WriteObjectToWriter

func (a InventoryList) WriteObjectToWriter(
	tipe ids.Type,
	sk *sku.Transacted,
	w io.Writer,
) (n int64, err error)

type ParsedBlobTomlFormatter2

type ParsedBlobTomlFormatter2[O any] struct{}

func (ParsedBlobTomlFormatter2[O]) EncodeTo

func (ParsedBlobTomlFormatter2[O]) EncodeTo(
	t O,
	w1 io.Writer,
) (n int64, err error)

type RepoStore

type RepoStore struct {
	// contains filtered or unexported fields
}

func MakeRepoStore

func MakeRepoStore(
	dirLayout env_repo.Env,
) RepoStore

func (RepoStore) ReadTypedBlob

func (a RepoStore) ReadTypedBlob(
	tipe ids.Type,
	blobSha interfaces.Sha,
) (common repo_blobs.Blob, n int64, err error)

func (RepoStore) WriteTypedBlob

func (store RepoStore) WriteTypedBlob(
	tipe ids.Type,
	blob repo_blobs.Blob,
) (sh interfaces.Sha, n int64, err error)

type Stores

type Stores struct {
	InventoryList InventoryList
	Repo          RepoStore
	Type          Type
	Tag           Tag
}

func MakeStores

func MakeStores(
	envRepo env_repo.Env,
	envLua env_lua.Env,
	objectFormat object_inventory_format.Format,
	boxFormat *box_format.BoxTransacted,
) Stores

func (Stores) GetTypeV1

type Tag

type Tag struct {
	// contains filtered or unexported fields
}

func MakeTagStore

func MakeTagStore(
	dirLayout env_repo.Env,
	envLua env_lua.Env,
) Tag

func (Tag) GetCommonStore

func (a Tag) GetCommonStore() sku.BlobStore[tag_blobs.Blob]

func (Tag) GetTransactedWithBlob

func (a Tag) GetTransactedWithBlob(
	tg sku.TransactedGetter,
) (twb sku.TransactedWithBlob[tag_blobs.Blob], n int64, err error)

func (Tag) PutTransactedWithBlob

func (a Tag) PutTransactedWithBlob(
	twb sku.TransactedWithBlob[tag_blobs.Blob],
) (err error)

type TomlBlobEncoder

type TomlBlobEncoder[
	O any,
	OPtr interfaces.Ptr[O],
] struct{}

func (TomlBlobEncoder[O, OPtr]) EncodeTo

func (TomlBlobEncoder[O, OPtr]) EncodeTo(
	t OPtr,
	w1 io.Writer,
) (n int64, err error)

type Type

type Type struct {
	// contains filtered or unexported fields
}

func MakeTypeStore

func MakeTypeStore(
	envRepo env_repo.Env,
) Type

func (Type) GetCommonStore

func (a Type) GetCommonStore() interfaces.TypedBlobStore[type_blobs.Blob]

func (Type) ParseTypedBlob

func (a Type) ParseTypedBlob(
	tipe interfaces.ObjectId,
	blobSha interfaces.Sha,
) (common type_blobs.Blob, n int64, err error)

func (Type) PutTypedBlob

func (a Type) PutTypedBlob(
	tipe interfaces.ObjectId,
	common type_blobs.Blob,
) (err error)

type TypedStore

type TypedStore[
	A any,
	APtr interfaces.Ptr[A],
] interface {
	// TODO remove and replace with two-step process
	SaveBlobText(APtr) (interfaces.Sha, int64, error)
	Format[A, APtr]
	interfaces.BlobPool[APtr]
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL