From 474d07adb531ec688d5a44e42983f222b28c9ce3 Mon Sep 17 00:00:00 2001 From: Sebastien Binet Date: Fri, 15 Apr 2022 15:33:50 +0200 Subject: [PATCH] groot/riofs: export in-memory read-only RMemFile ROOT file This CL export RMemFile, that provides a simple way to create in-memory read-only ROOT files. --- groot/riofs/memfile.go | 6 ++++++ groot/riofs/memfile_test.go | 3 +-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/groot/riofs/memfile.go b/groot/riofs/memfile.go index 1d698cdd0..42fc65dd4 100644 --- a/groot/riofs/memfile.go +++ b/groot/riofs/memfile.go @@ -6,6 +6,12 @@ package riofs import "bytes" +// RMemFile creates a simple in-memory read-only ROOT file +// from the provided slice of bytes. +func RMemFile(p []byte) Reader { + return &memFile{bytes.NewReader(p)} +} + // memFile is a simple in-memory read-only ROOT file type memFile struct { r *bytes.Reader diff --git a/groot/riofs/memfile_test.go b/groot/riofs/memfile_test.go index 31eff93c2..20df03ef9 100644 --- a/groot/riofs/memfile_test.go +++ b/groot/riofs/memfile_test.go @@ -5,7 +5,6 @@ package riofs import ( - "bytes" "os" "path/filepath" "reflect" @@ -53,7 +52,7 @@ func TestRMemFile(t *testing.T) { t.Fatalf("error reading file: %v", err) } - r, err := NewReader(&memFile{bytes.NewReader(raw)}) + r, err := NewReader(RMemFile(raw)) if err != nil { t.Fatal(err) }