Documentation
¶
Overview ¶
Package memblob provides an in-memory blob implementation. Use OpenBucket to construct a *blob.Bucket.
URLs ¶
For blob.OpenBucket memblob registers for the scheme "mem". To customize the URL opener, or for more details on the URL format, see URLOpener. See https://godoc.org/gocloud.dev#hdr-URLs for background information.
As ¶
memblob does not support any types for As.
Example ¶
package main
import (
"context"
"fmt"
"log"
"gocloud.dev/blob/memblob"
)
func main() {
// Create an in-memory bucket.
b := memblob.OpenBucket(nil)
defer b.Close()
// Now we can use b to read or write files to the container.
ctx := context.Background()
err := b.WriteAll(ctx, "my-key", []byte("hello world"), nil)
if err != nil {
log.Fatal(err)
}
data, err := b.ReadAll(ctx, "my-key")
if err != nil {
log.Fatal(err)
}
fmt.Println(string(data))
}
Output: hello world
Example (OpenBucket) ¶
package main
import (
"context"
"fmt"
"log"
"gocloud.dev/blob"
)
func main() {
// OpenBucket creates a *blob.Bucket from a URL.
b, err := blob.OpenBucket(context.Background(), "mem://")
if err != nil {
log.Fatal(err)
}
defer b.Close()
// Now we can use b to read or write files to the container.
ctx := context.Background()
err = b.WriteAll(ctx, "my-key", []byte("hello world"), nil)
if err != nil {
log.Fatal(err)
}
data, err := b.ReadAll(ctx, "my-key")
if err != nil {
log.Fatal(err)
}
fmt.Println(string(data))
}
Output: hello world
Index ¶
Examples ¶
Constants ¶
View Source
const Scheme = "mem"
Scheme is the URL scheme memblob registers its URLOpener under on blob.DefaultMux.
Variables ¶
This section is empty.
Functions ¶
func OpenBucket ¶
OpenBucket creates a *blob.Bucket backed by memory.
Types ¶
type Options ¶
type Options struct{}
Options sets options for constructing a *blob.Bucket backed by memory.
Click to show internal directories.
Click to hide internal directories.