diff options
author | Péter Szilágyi <peterke@gmail.com> | 2015-04-14 16:12:09 +0800 |
---|---|---|
committer | Péter Szilágyi <peterke@gmail.com> | 2015-04-14 16:12:09 +0800 |
commit | 4af7743663fa3e444668b90878f64d0df4316deb (patch) | |
tree | 0ad5898d8510600fe8cfe230d18f2c72b8cf53ed /whisper/topic.go | |
parent | cb707ba50ce8626aa1b0e87d7526416a9592852a (diff) | |
download | go-tangerine-4af7743663fa3e444668b90878f64d0df4316deb.tar.gz go-tangerine-4af7743663fa3e444668b90878f64d0df4316deb.tar.zst go-tangerine-4af7743663fa3e444668b90878f64d0df4316deb.zip |
whisper: add utility functions for creating topics
Diffstat (limited to 'whisper/topic.go')
-rw-r--r-- | whisper/topic.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/whisper/topic.go b/whisper/topic.go index 10069c902..7792e437f 100644 --- a/whisper/topic.go +++ b/whisper/topic.go @@ -17,6 +17,32 @@ func NewTopic(data []byte) Topic { return Topic(prefix) } +// NewTopics creates a list of topics from a list of binary data elements, by +// iteratively calling NewTopic on each of them. +func NewTopics(data ...[]byte) []Topic { + topics := make([]Topic, len(data)) + for i, element := range data { + topics[i] = NewTopic(element) + } + return topics +} + +// NewTopicFromString creates a topic using the binary data contents of the +// specified string. +func NewTopicFromString(data string) Topic { + return NewTopic([]byte(data)) +} + +// NewTopicsFromStrings creates a list of topics from a list of textual data +// elements, by iteratively calling NewTopicFromString on each of them. +func NewTopicsFromStrings(data ...string) []Topic { + topics := make([]Topic, len(data)) + for i, element := range data { + topics[i] = NewTopicFromString(element) + } + return topics +} + // String converts a topic byte array to a string representation. func (self *Topic) String() string { return string(self[:]) |