projects
/
lightning.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
20123d5
)
When writing library, write tags too.
author
Tom Clegg <tom@tomclegg.ca>
Wed, 7 Oct 2020 13:22:50 +0000
(09:22 -0400)
committer
Tom Clegg <tom@tomclegg.ca>
Wed, 7 Oct 2020 13:22:50 +0000
(09:22 -0400)
Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@tomclegg.ca>
import.go
patch
|
blob
|
history
taglib.go
patch
|
blob
|
history
diff --git
a/import.go
b/import.go
index e24b25dfac3ecc26a8aac0346835fb9b527b27f0..30e86a153f61a821b9139686e5841c8218dfe6fb 100644
(file)
--- a/
import.go
+++ b/
import.go
@@
-156,6
+156,7
@@
func (cmd *importer) RunCommand(prog string, args []string, stdin io.Reader, std
tilelib := &tileLibrary{taglib: taglib, includeNoCalls: cmd.includeNoCalls, skipOOO: cmd.skipOOO}
if cmd.outputTiles {
tilelib := &tileLibrary{taglib: taglib, includeNoCalls: cmd.includeNoCalls, skipOOO: cmd.skipOOO}
if cmd.outputTiles {
+ cmd.encoder.Encode(LibraryEntry{TagSet: taglib.Tags()})
tilelib.encoder = cmd.encoder
}
go func() {
tilelib.encoder = cmd.encoder
}
go func() {
diff --git
a/taglib.go
b/taglib.go
index 3dc45b80c08d67772cd4d6930fecf052bc44fce9..f92a91f375560014a9b768a2b37450518505528b 100644
(file)
--- a/
taglib.go
+++ b/
taglib.go
@@
-117,3
+117,17
@@
func (taglib *tagLibrary) setTags(tags [][]byte) error {
}
return nil
}
}
return nil
}
+
+func (taglib *tagLibrary) Tags() [][]byte {
+ out := make([][]byte, len(taglib.tagmap))
+ untwobit := []byte{'a', 'c', 'g', 't'}
+ for key, info := range taglib.tagmap {
+ seq := make([]byte, taglib.keylen)
+ for i := len(seq) - 1; i >= 0; i-- {
+ seq[i] = untwobit[int(key)&3]
+ key = key >> 2
+ }
+ out[int(info.id)] = seq
+ }
+ return out
+}