From 0565b5f2b35dc153dc98e1e3bd37476aa13ee4f1 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 30 Nov 2006 22:43:55 +0000 Subject: * More remote operations. * Added new operation hasSubstitutes(), which is more efficient than querySubstitutes().size() > 0. --- src/libutil/serialise.cc | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/libutil/serialise.cc') diff --git a/src/libutil/serialise.cc b/src/libutil/serialise.cc index aa11c590af36..969f638ef408 100644 --- a/src/libutil/serialise.cc +++ b/src/libutil/serialise.cc @@ -48,6 +48,14 @@ void writeString(const string & s, Sink & sink) } +void writeStringSet(const StringSet & ss, Sink & sink) +{ + writeInt(ss.size(), sink); + for (StringSet::iterator i = ss.begin(); i != ss.end(); ++i) + writeString(*i, sink); +} + + void readPadding(unsigned int len, Source & source) { if (len % 8) { @@ -84,4 +92,14 @@ string readString(Source & source) } +StringSet readStringSet(Source & source) +{ + unsigned int count = readInt(source); + StringSet ss; + while (count--) + ss.insert(readString(source)); + return ss; +} + + } -- cgit 1.4.1