From 6a8de8cf592878cc6f7d50624d18304967c3138c Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Wed, 2 Sep 2015 00:23:19 +0100 Subject: Move into AdHoc namespace --- libadhocutil/buffer.cpp | 22 +++++++++++++--------- libadhocutil/buffer.h | 16 +++++++++++----- libadhocutil/cache.h | 4 ++++ libadhocutil/cache.impl.h | 4 ++++ libadhocutil/curlHandle.cpp | 6 ++++++ libadhocutil/curlHandle.h | 6 ++++++ libadhocutil/curlMultiHandle.cpp | 6 ++++++ libadhocutil/curlMultiHandle.h | 6 ++++++ libadhocutil/curlStream.cpp | 6 ++++++ libadhocutil/curlStream.h | 8 +++++++- libadhocutil/lazyPointer.h | 6 +++++- libadhocutil/nvpParse.h | 4 ++++ libadhocutil/nvpParse.ll | 6 +++++- libadhocutil/processPipes.cpp | 6 ++++++ libadhocutil/processPipes.h | 6 ++++++ libadhocutil/runtimeContext.cpp | 6 ++++++ libadhocutil/runtimeContext.h | 6 ++++++ libadhocutil/safeMapFind.h | 6 ++++++ libadhocutil/scopeExit.cpp | 4 ++++ libadhocutil/scopeExit.h | 4 ++++ libadhocutil/unittests/testBuffer.cpp | 2 ++ libadhocutil/unittests/testCache.cpp | 18 +++++++++++------- libadhocutil/unittests/testContext.cpp | 2 ++ libadhocutil/unittests/testCurl.cpp | 6 +++++- libadhocutil/unittests/testLazyPointer.cpp | 2 ++ libadhocutil/unittests/testMapFinds.cpp | 2 ++ libadhocutil/unittests/testNvpParse.cpp | 2 ++ libadhocutil/unittests/testProcessPipes.cpp | 2 ++ libadhocutil/unittests/testScopeExit.cpp | 2 ++ 29 files changed, 151 insertions(+), 25 deletions(-) diff --git a/libadhocutil/buffer.cpp b/libadhocutil/buffer.cpp index 2ddca50..c7dda56 100644 --- a/libadhocutil/buffer.cpp +++ b/libadhocutil/buffer.cpp @@ -2,6 +2,8 @@ #include #include +namespace AdHoc { + Buffer::FragmentBase::~FragmentBase() = default; // @@ -317,15 +319,6 @@ Buffer::empty() const return content.empty(); } -std::ostream & -std::operator<<(std::ostream & os, const Buffer & b) -{ - for (const auto & f : b.content) { - os.write(f->c_str(), f->length()); - } - return os; -} - Buffer & Buffer::operator+=(const char * str) { @@ -338,3 +331,14 @@ Buffer::operator+=(const std::string & str) return append(str); } +} + +std::ostream & +std::operator<<(std::ostream & os, const AdHoc::Buffer & b) +{ + for (const auto & f : b.content) { + os.write(f->c_str(), f->length()); + } + return os; +} + diff --git a/libadhocutil/buffer.h b/libadhocutil/buffer.h index 4a355fa..1d99f22 100644 --- a/libadhocutil/buffer.h +++ b/libadhocutil/buffer.h @@ -9,12 +9,16 @@ #include #include "visibility.h" -class DLL_PUBLIC Buffer; +namespace AdHoc { + class DLL_PUBLIC Buffer; +} namespace std { - DLL_PUBLIC std::ostream & operator<<(std::ostream &, const Buffer &); + DLL_PUBLIC std::ostream & operator<<(std::ostream &, const AdHoc::Buffer &); } +namespace AdHoc { + /// High-speed text buffer for easy creation of programatically created strings. class DLL_PUBLIC Buffer : public virtual IntrusivePtrBase { public: @@ -158,10 +162,12 @@ class DLL_PUBLIC Buffer : public virtual IntrusivePtrBase { mutable Content content; }; +} + // libmisc compat macros -#define vstringf(...) Buffer().vappendf(__VA_ARGS__).str() -#define stringf(...) Buffer().appendf(__VA_ARGS__).str() -#define stringbf(...) Buffer().appendbf(__VA_ARGS__).str() +#define vstringf(...) AdHoc::Buffer().vappendf(__VA_ARGS__).str() +#define stringf(...) AdHoc::Buffer().appendf(__VA_ARGS__).str() +#define stringbf(...) AdHoc::Buffer().appendbf(__VA_ARGS__).str() #endif diff --git a/libadhocutil/cache.h b/libadhocutil/cache.h index f2a4e81..ff899dc 100644 --- a/libadhocutil/cache.h +++ b/libadhocutil/cache.h @@ -10,6 +10,8 @@ #include #include +namespace AdHoc { + /// @cond template class Cacheable { @@ -106,5 +108,7 @@ class Cache { mutable Cached cached; }; +} + #endif diff --git a/libadhocutil/cache.impl.h b/libadhocutil/cache.impl.h index 7d4119d..7b0340c 100644 --- a/libadhocutil/cache.impl.h +++ b/libadhocutil/cache.impl.h @@ -5,6 +5,8 @@ #include #include "lockHelpers.h" +namespace AdHoc { + /// @cond template Cacheable::Cacheable(const K & k, time_t vu) : @@ -130,5 +132,7 @@ Cache::prune() const } /// @endcond +} + #endif diff --git a/libadhocutil/curlHandle.cpp b/libadhocutil/curlHandle.cpp index 6192c70..b86d8c1 100644 --- a/libadhocutil/curlHandle.cpp +++ b/libadhocutil/curlHandle.cpp @@ -2,6 +2,9 @@ #include #include +namespace AdHoc { +namespace Net { + static void cleanup() __attribute__((destructor)); static void cleanup() { @@ -117,3 +120,6 @@ CurlHandle::checkCurlCode(CURLcode res) const } } +} +} + diff --git a/libadhocutil/curlHandle.h b/libadhocutil/curlHandle.h index de5d812..7bbcfc4 100644 --- a/libadhocutil/curlHandle.h +++ b/libadhocutil/curlHandle.h @@ -5,6 +5,9 @@ #include "intrusivePtrBase.h" #include "visibility.h" +namespace AdHoc { +namespace Net { + /// libcurl handle wrapper. /** Wraps a libcurl CURL * object in a C++ friendly manner. */ class DLL_PUBLIC CurlHandle : public virtual IntrusivePtrBase { @@ -62,5 +65,8 @@ void CurlHandle::setopt(CURLoption opt, const T val) } /// @endcond +} +} + #endif diff --git a/libadhocutil/curlMultiHandle.cpp b/libadhocutil/curlMultiHandle.cpp index 433b78c..9afd9e1 100644 --- a/libadhocutil/curlMultiHandle.cpp +++ b/libadhocutil/curlMultiHandle.cpp @@ -4,6 +4,9 @@ #include "runtimeContext.h" #include "curlStream.h" +namespace AdHoc { +namespace Net { + class RunningCurl : public CurlStreamSource { public: RunningCurl(const std::string & url, const boost::function & c) : @@ -93,3 +96,6 @@ CurlMultiHandle::performAll() } } +} +} + diff --git a/libadhocutil/curlMultiHandle.h b/libadhocutil/curlMultiHandle.h index 14242c6..6dc79b9 100644 --- a/libadhocutil/curlMultiHandle.h +++ b/libadhocutil/curlMultiHandle.h @@ -8,6 +8,9 @@ #include "visibility.h" #include "curlHandle.h" +namespace AdHoc { +namespace Net { + class RunningCurl; typedef boost::intrusive_ptr RunningCurlPtr; @@ -35,5 +38,8 @@ class DLL_PUBLIC CurlMultiHandle : public IntrusivePtrBase { }; typedef boost::intrusive_ptr CurlMultiHandlePtr; +} +} + #endif diff --git a/libadhocutil/curlStream.cpp b/libadhocutil/curlStream.cpp index 1cc0f4b..9701e54 100644 --- a/libadhocutil/curlStream.cpp +++ b/libadhocutil/curlStream.cpp @@ -1,5 +1,8 @@ #include "curlStream.h" +namespace AdHoc { +namespace Net { + CurlStreamSource::CurlStreamSource(const std::string & url) : CurlHandle(url), buflen(0), @@ -51,3 +54,6 @@ CurlStreamSource::recv(void * data, size_t datalen) return datalen; } +} +} + diff --git a/libadhocutil/curlStream.h b/libadhocutil/curlStream.h index 3a131f5..da54f0f 100644 --- a/libadhocutil/curlStream.h +++ b/libadhocutil/curlStream.h @@ -8,8 +8,11 @@ #include "visibility.h" #include "curlHandle.h" +namespace AdHoc { +namespace Net { + /// boost::iostreams::source implementation for CURL downloads. -class DLL_PUBLIC CurlStreamSource : public boost::iostreams::source, public CurlHandle, RuntimeContext { +class DLL_PUBLIC CurlStreamSource : public boost::iostreams::source, public CurlHandle, ::AdHoc::System::RuntimeContext { public: /** Construct a new stream source for the given URL. */ CurlStreamSource(const std::string & url); @@ -31,5 +34,8 @@ class DLL_PUBLIC CurlStreamSource : public boost::iostreams::source, public Curl typedef boost::iostreams::stream> CurlStream; +} +} + #endif diff --git a/libadhocutil/lazyPointer.h b/libadhocutil/lazyPointer.h index 79808b7..9b680c4 100644 --- a/libadhocutil/lazyPointer.h +++ b/libadhocutil/lazyPointer.h @@ -5,6 +5,8 @@ #include #include +namespace AdHoc { + /// Smart pointer that initializes itself only if it has to. /** * LazyPointer behaves like a normal smarter for the most part. It's benefit @@ -130,9 +132,11 @@ class LazyPointer { mutable Source source; }; +} + namespace boost { template - R * dynamic_pointer_cast(const LazyPointer & p) { + R * dynamic_pointer_cast(const AdHoc::LazyPointer & p) { return dynamic_cast(p.get()); } } diff --git a/libadhocutil/nvpParse.h b/libadhocutil/nvpParse.h index 354046d..403a6de 100644 --- a/libadhocutil/nvpParse.h +++ b/libadhocutil/nvpParse.h @@ -13,6 +13,8 @@ #endif #include +namespace AdHoc { + /// Name=Value parser. /** * Parses an input stream of the format Name=Value;Name2=Value2;... into a predefined object @@ -91,5 +93,7 @@ class NvpParse : public yyFlexLexer { const AssignMap values; }; +} + #endif diff --git a/libadhocutil/nvpParse.ll b/libadhocutil/nvpParse.ll index 1e6a528..601aa53 100644 --- a/libadhocutil/nvpParse.ll +++ b/libadhocutil/nvpParse.ll @@ -3,7 +3,7 @@ %option noyywrap %option 8bit %option stack -%option yyclass="NvpParse" +%option yyclass="AdHoc::NvpParse" %option prefix="nvpBase" %{ @@ -51,6 +51,8 @@ semi ";" %% #include "safeMapFind.h" +namespace AdHoc { + NvpParse::ValueNotFound::ValueNotFound(const std::string & vn) : std::runtime_error("Value not found: " + vn) { @@ -83,3 +85,5 @@ NvpParse::parse(std::istream & in, const AssignMap & m) p.yylex(); } +} + diff --git a/libadhocutil/processPipes.cpp b/libadhocutil/processPipes.cpp index 55050ae..229c9d2 100644 --- a/libadhocutil/processPipes.cpp +++ b/libadhocutil/processPipes.cpp @@ -5,6 +5,9 @@ #include #include +namespace AdHoc { +namespace System { + ProcessPipes::ProcessPipes(const std::vector & args, bool i, bool o, bool e) : in(-1), out(-1), @@ -136,3 +139,6 @@ ProcessPipes::pid() const return child; } +} +} + diff --git a/libadhocutil/processPipes.h b/libadhocutil/processPipes.h index 42efbe7..195d8e9 100644 --- a/libadhocutil/processPipes.h +++ b/libadhocutil/processPipes.h @@ -5,6 +5,9 @@ #include #include "visibility.h" +namespace AdHoc { +namespace System { + /// Spawn a process and attach to its IO handles. class DLL_PUBLIC ProcessPipes { public: @@ -36,5 +39,8 @@ class DLL_PUBLIC ProcessPipes { pid_t child; }; +} +} + #endif diff --git a/libadhocutil/runtimeContext.cpp b/libadhocutil/runtimeContext.cpp index 4cb5a17..fc09419 100644 --- a/libadhocutil/runtimeContext.cpp +++ b/libadhocutil/runtimeContext.cpp @@ -1,6 +1,9 @@ #include "runtimeContext.h" #include +namespace AdHoc { +namespace System { + RuntimeContext::RuntimeContext(size_t stacksize) : completed(false), swapped(false) @@ -50,3 +53,6 @@ RuntimeContext::callbackWrapper(RuntimeContext * rc) rc->completed = true; } +} +} + diff --git a/libadhocutil/runtimeContext.h b/libadhocutil/runtimeContext.h index 21c6fe6..8c87263 100644 --- a/libadhocutil/runtimeContext.h +++ b/libadhocutil/runtimeContext.h @@ -5,6 +5,9 @@ #include #include "visibility.h" +namespace AdHoc { +namespace System { + /// Runtime Context /** * Create an alternate stack for processing. @@ -38,5 +41,8 @@ class DLL_PUBLIC RuntimeContext { bool swapped; }; +} +} + #endif diff --git a/libadhocutil/safeMapFind.h b/libadhocutil/safeMapFind.h index 9b2823a..7c36367 100644 --- a/libadhocutil/safeMapFind.h +++ b/libadhocutil/safeMapFind.h @@ -1,6 +1,10 @@ #ifndef ADHOCUTIL_SAFEMAPFIND_H #define ADHOCUTIL_SAFEMAPFIND_H +#include + +namespace AdHoc { + /* * Find the key and return the iterator to the pair, * or throw Ex(key) if not found. @@ -56,5 +60,7 @@ containerContains(const Cont & c, const typename Cont::value_type & v) return (std::find(c.begin(), c.end(), v) != c.end()); } +} + #endif diff --git a/libadhocutil/scopeExit.cpp b/libadhocutil/scopeExit.cpp index fa914c5..b9ff8f5 100644 --- a/libadhocutil/scopeExit.cpp +++ b/libadhocutil/scopeExit.cpp @@ -1,5 +1,7 @@ #include "scopeExit.h" +namespace AdHoc { + ScopeExit::ScopeExit(const Event & onexitpre, const Event & onsuccess, const Event & onfailure, const Event & onexitpost) : onExitPre(onexitpre), onSuccess(onsuccess), @@ -20,3 +22,5 @@ ScopeExit::~ScopeExit() if (onExitPost) onExitPost(); } +} + diff --git a/libadhocutil/scopeExit.h b/libadhocutil/scopeExit.h index dc2a286..a8eb9a2 100644 --- a/libadhocutil/scopeExit.h +++ b/libadhocutil/scopeExit.h @@ -4,6 +4,8 @@ #include #include "visibility.h" +namespace AdHoc { + /// Run code at scope exit. class DLL_PUBLIC ScopeExit { public: @@ -29,5 +31,7 @@ class DLL_PUBLIC ScopeExit { const Event onExitPost; }; +} + #endif diff --git a/libadhocutil/unittests/testBuffer.cpp b/libadhocutil/unittests/testBuffer.cpp index dce9f66..46a4242 100644 --- a/libadhocutil/unittests/testBuffer.cpp +++ b/libadhocutil/unittests/testBuffer.cpp @@ -3,6 +3,8 @@ #include "buffer.h" +using namespace AdHoc; + BOOST_AUTO_TEST_CASE ( create ) { Buffer empty; diff --git a/libadhocutil/unittests/testCache.cpp b/libadhocutil/unittests/testCache.cpp index da6df69..736cf07 100644 --- a/libadhocutil/unittests/testCache.cpp +++ b/libadhocutil/unittests/testCache.cpp @@ -5,19 +5,23 @@ #include "cache.h" #include "cache.impl.h" -typedef Cache TestCache; -template class Cache; -template class Cacheable; -template class ObjectCacheable; -template class CallCacheable; - namespace std { std::ostream & operator<<(std::ostream & s, const std::nullptr_t &) { - return s << "(nil)"; + return s << "(nil)"; } } +namespace AdHoc { + typedef Cache TestCache; + template class Cache; + template class Cacheable; + template class ObjectCacheable; + template class CallCacheable; +} + +using namespace AdHoc; + BOOST_AUTO_TEST_CASE( miss ) { TestCache tc; diff --git a/libadhocutil/unittests/testContext.cpp b/libadhocutil/unittests/testContext.cpp index de76493..0447beb 100644 --- a/libadhocutil/unittests/testContext.cpp +++ b/libadhocutil/unittests/testContext.cpp @@ -3,6 +3,8 @@ #include "runtimeContext.h" +using namespace AdHoc::System; + class TestRuntimeContext : public RuntimeContext { public: void run() diff --git a/libadhocutil/unittests/testCurl.cpp b/libadhocutil/unittests/testCurl.cpp index 5365f58..1a8a595 100644 --- a/libadhocutil/unittests/testCurl.cpp +++ b/libadhocutil/unittests/testCurl.cpp @@ -8,7 +8,11 @@ #include "definedDirs.h" #include "net.h" -size_t discard(void *, size_t sz, size_t nm, void *) +using namespace AdHoc::Net; + +static +size_t +discard(void *, size_t sz, size_t nm, void *) { return sz * nm; } diff --git a/libadhocutil/unittests/testLazyPointer.cpp b/libadhocutil/unittests/testLazyPointer.cpp index 6c4ddcd..3b69c80 100644 --- a/libadhocutil/unittests/testLazyPointer.cpp +++ b/libadhocutil/unittests/testLazyPointer.cpp @@ -5,6 +5,8 @@ #include "intrusivePtrBase.h" #include "lazyPointer.h" +using namespace AdHoc; + class Test : public IntrusivePtrBase { public: Test(int v) : diff --git a/libadhocutil/unittests/testMapFinds.cpp b/libadhocutil/unittests/testMapFinds.cpp index c0b7c5e..a787676 100644 --- a/libadhocutil/unittests/testMapFinds.cpp +++ b/libadhocutil/unittests/testMapFinds.cpp @@ -7,6 +7,8 @@ #include #include +using namespace AdHoc; + class NotFound : std::runtime_error { public: NotFound(int key) : diff --git a/libadhocutil/unittests/testNvpParse.cpp b/libadhocutil/unittests/testNvpParse.cpp index dd7432f..db552de 100644 --- a/libadhocutil/unittests/testNvpParse.cpp +++ b/libadhocutil/unittests/testNvpParse.cpp @@ -3,6 +3,8 @@ #include "nvpParse.h" +using namespace AdHoc; + class TestTarget { public: std::string a; diff --git a/libadhocutil/unittests/testProcessPipes.cpp b/libadhocutil/unittests/testProcessPipes.cpp index c87e074..ecd596b 100644 --- a/libadhocutil/unittests/testProcessPipes.cpp +++ b/libadhocutil/unittests/testProcessPipes.cpp @@ -5,6 +5,8 @@ #include "definedDirs.h" #include +using namespace AdHoc::System; + BOOST_AUTO_TEST_CASE ( readfind ) { ProcessPipes pp({"/usr/bin/find", rootDir.string(), "-maxdepth", "1"}, false, true, true); diff --git a/libadhocutil/unittests/testScopeExit.cpp b/libadhocutil/unittests/testScopeExit.cpp index 80574f9..66f4c48 100644 --- a/libadhocutil/unittests/testScopeExit.cpp +++ b/libadhocutil/unittests/testScopeExit.cpp @@ -4,6 +4,8 @@ #include "scopeExit.h" #include +using namespace AdHoc; + BOOST_AUTO_TEST_CASE ( cleanexit ) { std::string log; -- cgit v1.2.3