aboutsummaryrefslogtreecommitdiff
path: root/store.go
diff options
context:
space:
mode:
Diffstat (limited to 'store.go')
-rw-r--r--store.go35
1 files changed, 0 insertions, 35 deletions
diff --git a/store.go b/store.go
deleted file mode 100644
index 4ab0f4b..0000000
--- a/store.go
+++ /dev/null
@@ -1,35 +0,0 @@
-// SPDX-FileCopyrightText: 2026 Stefan Majewsky <majewsky@gmx.net>
-// SPDX-License-Identifier: Apache-2.0
-
-package oblast
-
-import (
- "reflect"
-
- "go.xyrillian.de/oblast/internal"
-)
-
-// Store is the main interface of this library.
-// It holds information on how to read and write data into record type R, and can also be used to execute autogenerated queries if the respective [PlanOption]s were provided during [NewStore].
-type Store[R any] struct {
- plan internal.Plan
-}
-
-// NewStore initializes a store for record type R.
-func NewStore[R any](dialect Dialect, opts ...PlanOption) (Store[R], error) {
- var popts internal.PlanOpts
- for _, opt := range opts {
- opt(&popts)
- }
- plan, err := internal.BuildPlan(reflect.TypeFor[R](), dialect, popts)
- return Store[R]{plan}, err
-}
-
-// MustNewStore is like [NewStore], but panics on error.
-func MustNewStore[R any](dialect Dialect, opts ...PlanOption) Store[R] {
- store, err := NewStore[R](dialect, opts...)
- if err != nil {
- panic(err.Error())
- }
- return store
-}