package store

import (
	

	bolt 
)

// ErrNoSharedVar is returned by Store.SharedVar when there is no such variable.
var ErrNoSharedVar = errors.New("no such shared variable")

func () {
	initDB["initialize shared variable table"] = func( *bolt.Tx) error {
		,  := .CreateBucketIfNotExists([]byte(bucketSharedVar))
		return 
	}
}

// SharedVar gets the value of a shared variable.
func ( *dbStore) ( string) (string, error) {
	var  string
	 := .db.View(func( *bolt.Tx) error {
		 := .Bucket([]byte(bucketSharedVar))
		 := .Get([]byte())
		if  == nil {
			return ErrNoSharedVar
		}
		 = string()
		return nil
	})
	return , 
}

// SetSharedVar sets the value of a shared variable.
func ( *dbStore) (,  string) error {
	return .db.Update(func( *bolt.Tx) error {
		 := .Bucket([]byte(bucketSharedVar))
		return .Put([]byte(), []byte())
	})
}

// DelSharedVar deletes a shared variable.
func ( *dbStore) ( string) error {
	return .db.Update(func( *bolt.Tx) error {
		 := .Bucket([]byte(bucketSharedVar))
		return .Delete([]byte())
	})
}