diff options
author | Enrico Zini <enrico@enricozini.org> | 2015-09-10 19:52:45 +0200 |
---|---|---|
committer | Enrico Zini <enrico@enricozini.org> | 2015-09-10 19:52:45 +0200 |
commit | c5dd516802af50f8e369e9f520b88dcf28dc77df (patch) | |
tree | b7df739f0cb01abf87bd6cae9cd55bb26920fc94 /rep/usr/include/tagcoll-2.0.11 | |
parent | 74e4ebe74b307d65d9064357cbf80855afbe059b (diff) | |
parent | ea85d58bc9d619e1511b40a16a630c5da9e60a42 (diff) | |
download | libept-c5dd516802af50f8e369e9f520b88dcf28dc77df.tar.gz |
Merge branch 'notagcoll': removed dependencies on tagcoll and wibble.
Diffstat (limited to 'rep/usr/include/tagcoll-2.0.11')
25 files changed, 0 insertions, 5051 deletions
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html deleted file mode 100644 index 040ef47..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html +++ /dev/null @@ -1,261 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h</title> - <link rel="stylesheet" type="text/css" href="../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - TextFormat.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">7</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">14.3 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">1</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_TEXTFORMAT_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_TEXTFORMAT_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Serialize and deserialize a tagged collection to a text file -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003--2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <wibble/mixin.h> -<span class="lineNum"> 27 </span> : #include <wibble/empty.h> -<span class="lineNum"> 28 </span> : #include <wibble/singleton.h> -<span class="lineNum"> 29 </span> : #include <tagcoll/input/base.h> -<span class="lineNum"> 30 </span> : -<span class="lineNum"> 31 </span> : #include <stdio.h> -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : //#define TRACE_PARSE -<span class="lineNum"> 34 </span> : -<span class="lineNum"> 35 </span> : namespace tagcoll -<span class="lineNum"> 36 </span> : { -<span class="lineNum"> 37 </span> : template<class ITEM, class TAG> -<span class="lineNum"> 38 </span> : class PatchList; -<span class="lineNum"> 39 </span> : template<class ITEM, class TAG> -<span class="lineNum"> 40 </span> : class Patch; -<span class="lineNum"> 41 </span> : -<span class="lineNum"> 42 </span> : namespace textformat -<span class="lineNum"> 43 </span> : { -<span class="lineNum"> 44 </span> : -<span class="lineNum"> 45 </span> : /** -<span class="lineNum"> 46 </span> : * TagcollConsumer that serializes its input to an output stream -<span class="lineNum"> 47 </span> : * -<span class="lineNum"> 48 </span> : * The format of the output is: -<span class="lineNum"> 49 </span> : * lines of "comma+space"-separated items, followed by "colon+space", -<span class="lineNum"> 50 </span> : * followed by the corresponding "comma+space"-separated tags. -<span class="lineNum"> 51 </span> : * Examples: -<span class="lineNum"> 52 </span> : * ITEM: -<span class="lineNum"> 53 </span> : * ITEM: TAG -<span class="lineNum"> 54 </span> : * ITEM: TAG1, TAG2, TAG3 -<span class="lineNum"> 55 </span> : * ITEM1, ITEM2, ITEM3: -<span class="lineNum"> 56 </span> : * ITEM1, ITEM2, ITEM3: TAG1, TAG2, TAG3 -<span class="lineNum"> 57 </span> : */ -<span class="lineNum"> 58 </span> : class StdioWriter : public wibble::mixin::OutputIterator<StdioWriter> -<span class="lineNum"> 59 </span> : { -<span class="lineNum"> 60 </span> : protected: -<span class="lineNum"> 61 </span> : FILE* out; -<span class="lineNum"> 62 </span> : -<span class="lineNum"> 63 </span> : public: -<span class="lineNum"> 64 </span><span class="lineCov"> 1 : StdioWriter(FILE* out) : out(out) {}</span> -<span class="lineNum"> 65 </span> : -<span class="lineNum"> 66 </span> : template<typename Items, typename Tags> -<span class="lineNum"> 67 </span> : StdioWriter& operator=(const std::pair<Items, Tags>& data); -<span class="lineNum"> 68 </span> : }; -<span class="lineNum"> 69 </span> : -<span class="lineNum"> 70 </span> : class OstreamWriter : public wibble::mixin::OutputIterator<OstreamWriter> -<span class="lineNum"> 71 </span> : { -<span class="lineNum"> 72 </span> : protected: -<span class="lineNum"> 73 </span> : std::ostream& out; -<span class="lineNum"> 74 </span> : -<span class="lineNum"> 75 </span> : public: -<span class="lineNum"> 76 </span> : OstreamWriter(std::ostream& out) : out(out) {} -<span class="lineNum"> 77 </span> : -<span class="lineNum"> 78 </span> : template<typename Items, typename Tags> -<span class="lineNum"> 79 </span> : OstreamWriter& operator=(const std::pair<Items, Tags>& data); -<span class="lineNum"> 80 </span> : }; -<span class="lineNum"> 81 </span> : -<span class="lineNum"> 82 </span> : /** -<span class="lineNum"> 83 </span> : * Parse an element from input -<span class="lineNum"> 84 </span> : * -<span class="lineNum"> 85 </span> : * @retval item -<span class="lineNum"> 86 </span> : * The item found on input -<span class="lineNum"> 87 </span> : * @return -<span class="lineNum"> 88 </span> : * the trailing separating char, that can be: -<span class="lineNum"> 89 </span> : * \li input::Input::Eof -<span class="lineNum"> 90 </span> : * \li '\n' -<span class="lineNum"> 91 </span> : * \li ':' -<span class="lineNum"> 92 </span> : * \li ',' -<span class="lineNum"> 93 </span> : */ -<span class="lineNum"> 94 </span> : int parseElement(input::Input& in, std::string& item); -<span class="lineNum"> 95 </span> : -<span class="lineNum"> 96 </span> : -<span class="lineNum"> 97 </span> : /** -<span class="lineNum"> 98 </span> : * Serialize a patch -<span class="lineNum"> 99 </span> : */ -<span class="lineNum"> 100 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 101 </span> : void outputPatch( -<span class="lineNum"> 102 </span> : ITEMSER& itemconv, -<span class="lineNum"> 103 </span> : TAGSER& tagconv, -<span class="lineNum"> 104 </span> : const PatchList<ITEM, TAG>& patch, -<span class="lineNum"> 105 </span> : FILE* out); -<span class="lineNum"> 106 </span> : -<span class="lineNum"> 107 </span> : void outputPatch( -<span class="lineNum"> 108 </span> : const PatchList<std::string, std::string>& patch, -<span class="lineNum"> 109 </span> : FILE* out); -<span class="lineNum"> 110 </span> : -<span class="lineNum"> 111 </span> : -<span class="lineNum"> 112 </span> : /* -<span class="lineNum"> 113 </span> : * Parse a tagged collection, sending the results to out. -<span class="lineNum"> 114 </span> : * -<span class="lineNum"> 115 </span> : * @param out -<span class="lineNum"> 116 </span> : * An output iterator accepting a std::pair<string, string> -<span class="lineNum"> 117 </span> : */ -<span class="lineNum"> 118 </span> : template<typename OUT> -<span class="lineNum"> 119 </span> : void parse(input::Input& in, OUT out); -<span class="lineNum"> 120 </span> : -<span class="lineNum"> 121 </span> : /** -<span class="lineNum"> 122 </span> : * Assemble a patch from a stream of "item: +added, -removed" items and tags -<span class="lineNum"> 123 </span> : */ -<span class="lineNum"> 124 </span> : template<typename OUT> -<span class="lineNum"> 125 </span> : class PatchAssembler : public wibble::mixin::OutputIterator< PatchAssembler<OUT> > -<span class="lineNum"> 126 </span> : { -<span class="lineNum"> 127 </span> : OUT out; -<span class="lineNum"> 128 </span> : public: -<span class="lineNum"> 129 </span><span class="lineNoCov"> 0 : PatchAssembler(const OUT& out) : out(out) {}</span> -<span class="lineNum"> 130 </span> : -<span class="lineNum"> 131 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 132 </span> : PatchAssembler& operator=(const std::pair<ITEMS, TAGS>& data); -<span class="lineNum"> 133 </span> : }; -<span class="lineNum"> 134 </span> : -<span class="lineNum"> 135 </span> : template<typename OUT> -<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : PatchAssembler<OUT> patchAssembler(const OUT& out)</span> -<span class="lineNum"> 137 </span> : { -<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : return PatchAssembler<OUT>(out);</span> -<span class="lineNum"> 139 </span> : } -<span class="lineNum"> 140 </span> : -<span class="lineNum"> 141 </span> : template<typename OUT> -<span class="lineNum"> 142 </span><span class="lineNoCov"> 0 : void parsePatch(input::Input& in, OUT out)</span> -<span class="lineNum"> 143 </span> : { -<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : parse(in, patchAssembler(out));</span> -<span class="lineNum"> 145 </span><span class="lineNoCov"> 0 : }</span> -<span class="lineNum"> 146 </span> : -<span class="lineNum"> 147 </span> : /** -<span class="lineNum"> 148 </span> : * Parse a tagcoll patch -<span class="lineNum"> 149 </span> : */ -<span class="lineNum"> 150 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 151 </span> : PatchList<ITEM, TAG> parsePatch( -<span class="lineNum"> 152 </span> : ITEMSER& itemconv, -<span class="lineNum"> 153 </span> : TAGSER& tagconv, -<span class="lineNum"> 154 </span> : input::Input& in); -<span class="lineNum"> 155 </span> : -<span class="lineNum"> 156 </span> : PatchList<std::string, std::string> parsePatch(input::Input& in); -<span class="lineNum"> 157 </span> : -<span class="lineNum"> 158 </span> : -<span class="lineNum"> 159 </span> : -<span class="lineNum"> 160 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 161 </span> : class PatchBuilder : public wibble::mixin::OutputIterator< PatchBuilder<ITEM, TAG, ITEMSER, TAGSER> > -<span class="lineNum"> 162 </span> : { -<span class="lineNum"> 163 </span> : protected: -<span class="lineNum"> 164 </span> : PatchList<ITEM, TAG>& patch; -<span class="lineNum"> 165 </span> : const ITEMSER& itemconv; -<span class="lineNum"> 166 </span> : const TAGSER& tagconv; -<span class="lineNum"> 167 </span> : -<span class="lineNum"> 168 </span> : public: -<span class="lineNum"> 169 </span> : PatchBuilder( -<span class="lineNum"> 170 </span> : PatchList<ITEM, TAG>& patch, -<span class="lineNum"> 171 </span> : const ITEMSER& itemconv, -<span class="lineNum"> 172 </span> : const TAGSER& tagconv) -<span class="lineNum"> 173 </span> : : patch(patch), itemconv(itemconv), tagconv(tagconv) {} -<span class="lineNum"> 174 </span> : -<span class="lineNum"> 175 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 176 </span> : PatchBuilder<ITEM, TAG, ITEMSER, TAGSER>& operator=(const std::pair<ITEMS, TAGS>& data); -<span class="lineNum"> 177 </span> : -<span class="lineNum"> 178 </span> : const PatchList<ITEM, TAG>& getPatch() const throw () { return patch; } -<span class="lineNum"> 179 </span> : }; -<span class="lineNum"> 180 </span> : -<span class="lineNum"> 181 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 182 </span> : PatchBuilder<ITEM, TAG, ITEMSER, TAGSER> patchBuilder( -<span class="lineNum"> 183 </span> : PatchList<ITEM, TAG>& patch, -<span class="lineNum"> 184 </span> : const ITEMSER& itemconv, -<span class="lineNum"> 185 </span> : const TAGSER& tagconv) -<span class="lineNum"> 186 </span> : { -<span class="lineNum"> 187 </span> : return PatchBuilder<ITEM, TAG, ITEMSER, TAGSER>(patch, itemconv, tagconv); -<span class="lineNum"> 188 </span> : } -<span class="lineNum"> 189 </span> : -<span class="lineNum"> 190 </span> : } -<span class="lineNum"> 191 </span> : } -<span class="lineNum"> 192 </span> : -<span class="lineNum"> 193 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 194 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html deleted file mode 100644 index 3b6b659..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html +++ /dev/null @@ -1,357 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc</title> - <link rel="stylesheet" type="text/css" href="../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - TextFormat.tcc</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">79</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">54.4 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">43</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : /* -<span class="lineNum"> 2 </span> : * Serialize a tagged collection to a text file -<span class="lineNum"> 3 </span> : * -<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2008 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 5 </span> : * -<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 14 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 19 </span> : */ -<span class="lineNum"> 20 </span> : -<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_TEXTFORMAT_TCC -<span class="lineNum"> 22 </span> : #define TAGCOLL_TEXTFORMAT_TCC -<span class="lineNum"> 23 </span> : -<span class="lineNum"> 24 </span> : #include <tagcoll/TextFormat.h> -<span class="lineNum"> 25 </span> : #include <tagcoll/patch.h> -<span class="lineNum"> 26 </span> : -<span class="lineNum"> 27 </span> : #include <wibble/exception.h> -<span class="lineNum"> 28 </span> : #include <wibble/empty.h> -<span class="lineNum"> 29 </span> : #include <wibble/operators.h> -<span class="lineNum"> 30 </span> : -<span class="lineNum"> 31 </span> : #include <ostream> -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : using namespace std; -<span class="lineNum"> 34 </span> : using namespace wibble; -<span class="lineNum"> 35 </span> : using namespace wibble::operators; -<span class="lineNum"> 36 </span> : -<span class="lineNum"> 37 </span><span class="lineNoCov"> 0 : static void printTagset(const std::set<string>& ts, FILE* out)</span> -<span class="lineNum"> 38 </span> : { -<span class="lineNum"> 39 </span><span class="lineNoCov"> 0 : for (std::set<string>::const_iterator i = ts.begin();</span> -<span class="lineNum"> 40 </span> : i != ts.end(); i++) -<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : if (i == ts.begin())</span> -<span class="lineNum"> 42 </span> : { -<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : if (fprintf(out, "%s", i->c_str()) < 0)</span> -<span class="lineNum"> 44 </span><span class="lineNoCov"> 0 : throw wibble::exception::System("writing tagset");</span> -<span class="lineNum"> 45 </span> : } -<span class="lineNum"> 46 </span> : else -<span class="lineNum"> 47 </span> : { -<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : if (fprintf(out, ", %s", i->c_str()) < 0)</span> -<span class="lineNum"> 49 </span><span class="lineNoCov"> 0 : throw wibble::exception::System("writing tagset");</span> -<span class="lineNum"> 50 </span> : } -<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : }</span> -<span class="lineNum"> 52 </span> : -<span class="lineNum"> 53 </span> : namespace tagcoll { -<span class="lineNum"> 54 </span> : namespace textformat { -<span class="lineNum"> 55 </span> : -<span class="lineNum"> 56 </span><span class="lineCov"> 126871 : inline static void outString(const std::string& str, FILE* out, const char* what)</span> -<span class="lineNum"> 57 </span> : { -<span class="lineNum"> 58 </span><span class="lineCov"> 126871 : if (fwrite(str.data(), str.size(), 1, out) != 1)</span> -<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(string("writing ") + what);</span> -<span class="lineNum"> 60 </span><span class="lineCov"> 126871 : }</span> -<span class="lineNum"> 61 </span> : -<span class="lineNum"> 62 </span> : template<typename Items, typename Tags> -<span class="lineNum"> 63 </span><span class="lineCov"> 21145 : StdioWriter& StdioWriter::operator=(const std::pair<Items, Tags>& data)</span> -<span class="lineNum"> 64 </span> : { -<span class="lineNum"> 65 </span><span class="lineCov"> 42290 : for (typename Items::const_iterator i = data.first.begin();</span> -<span class="lineNum"> 66 </span> : i != data.first.end(); ++i) -<span class="lineNum"> 67 </span> : { -<span class="lineNum"> 68 </span><span class="lineCov"> 21145 : if (i != data.first.begin())</span> -<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : if (fputs(", ", out) == EOF)</span> -<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : throw wibble::exception::System("writing comma after item");</span> -<span class="lineNum"> 71 </span><span class="lineCov"> 21145 : outString(*i, out, "item");</span> -<span class="lineNum"> 72 </span> : } -<span class="lineNum"> 73 </span><span class="lineCov"> 21145 : if (data.second.begin() != data.second.end())</span> -<span class="lineNum"> 74 </span> : { -<span class="lineNum"> 75 </span><span class="lineCov"> 21145 : if (fputs(": ", out) == EOF)</span> -<span class="lineNum"> 76 </span><span class="lineNoCov"> 0 : throw wibble::exception::System("writing colon after items");</span> -<span class="lineNum"> 77 </span><span class="lineCov"> 126871 : for (typename Tags::const_iterator i = data.second.begin();</span> -<span class="lineNum"> 78 </span> : i != data.second.end(); ++i) -<span class="lineNum"> 79 </span> : { -<span class="lineNum"> 80 </span><span class="lineCov"> 105726 : if (i != data.second.begin())</span> -<span class="lineNum"> 81 </span><span class="lineCov"> 84581 : if (fputs(", ", out) == EOF)</span> -<span class="lineNum"> 82 </span><span class="lineNoCov"> 0 : throw wibble::exception::System("writing comma after tag");</span> -<span class="lineNum"> 83 </span><span class="lineCov"> 105726 : outString(*i, out, "tag");</span> -<span class="lineNum"> 84 </span> : } -<span class="lineNum"> 85 </span> : } -<span class="lineNum"> 86 </span><span class="lineCov"> 21145 : if (fputc('\n', out) == EOF)</span> -<span class="lineNum"> 87 </span><span class="lineNoCov"> 0 : throw wibble::exception::System("writing newline after tagset");</span> -<span class="lineNum"> 88 </span><span class="lineCov"> 21145 : return *this;</span> -<span class="lineNum"> 89 </span> : } -<span class="lineNum"> 90 </span> : -<span class="lineNum"> 91 </span> : template<typename Items, typename Tags> -<span class="lineNum"> 92 </span> : OstreamWriter& OstreamWriter::operator=(const std::pair<Items, Tags>& data) -<span class="lineNum"> 93 </span> : { -<span class="lineNum"> 94 </span> : for (typename Items::const_iterator i = data.first.begin(); -<span class="lineNum"> 95 </span> : i != data.first.end(); ++i) -<span class="lineNum"> 96 </span> : { -<span class="lineNum"> 97 </span> : if (i != data.first.begin()) -<span class="lineNum"> 98 </span> : out << ", "; -<span class="lineNum"> 99 </span> : out << *i; -<span class="lineNum"> 100 </span> : } -<span class="lineNum"> 101 </span> : if (data.second.begin() != data.second.end()) -<span class="lineNum"> 102 </span> : { -<span class="lineNum"> 103 </span> : out << ": "; -<span class="lineNum"> 104 </span> : for (typename Tags::const_iterator i = data.second.begin(); -<span class="lineNum"> 105 </span> : i != data.second.end(); ++i) -<span class="lineNum"> 106 </span> : { -<span class="lineNum"> 107 </span> : if (i != data.second.begin()) -<span class="lineNum"> 108 </span> : out << ", "; -<span class="lineNum"> 109 </span> : out << *i; -<span class="lineNum"> 110 </span> : } -<span class="lineNum"> 111 </span> : } -<span class="lineNum"> 112 </span> : out << endl; -<span class="lineNum"> 113 </span> : return *this; -<span class="lineNum"> 114 </span> : } -<span class="lineNum"> 115 </span> : -<span class="lineNum"> 116 </span> : -<span class="lineNum"> 117 </span> : -<span class="lineNum"> 118 </span> : // item1, item2, item3: tag1, tag2, tag3 -<span class="lineNum"> 119 </span> : -<span class="lineNum"> 120 </span> : //#define TRACE_PARSE -<span class="lineNum"> 121 </span> : template<typename OUT> -<span class="lineNum"> 122 </span><span class="lineCov"> 2 : void parse(input::Input& in, OUT out)</span> -<span class="lineNum"> 123 </span> : { -<span class="lineNum"> 124 </span><span class="lineCov"> 2 : string item;</span> -<span class="lineNum"> 125 </span> : -<span class="lineNum"> 126 </span><span class="lineCov"> 2 : std::set<string> itemset;</span> -<span class="lineNum"> 127 </span><span class="lineCov"> 2 : std::set<string> tagset;</span> -<span class="lineNum"> 128 </span> : int sep; -<span class="lineNum"> 129 </span><span class="lineCov"> 2 : enum {ITEMS, TAGS} state = ITEMS;</span> -<span class="lineNum"> 130 </span><span class="lineCov"> 2 : int line = 1;</span> -<span class="lineNum"> 131 </span><span class="lineCov"> 253744 : do</span> -<span class="lineNum"> 132 </span> : { -<span class="lineNum"> 133 </span> : try { -<span class="lineNum"> 134 </span><span class="lineCov"> 253744 : sep = parseElement(in, item);</span> -<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : } catch (tagcoll::exception::Parser& e) {</span> -<span class="lineNum"> 136 </span> : // Add the line number and propagate -<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : e.line(line);</span> -<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : throw e;</span> -<span class="lineNum"> 139 </span> : } -<span class="lineNum"> 140 </span> : -<span class="lineNum"> 141 </span><span class="lineCov"> 507488 : if (item.size() != 0)</span> -<span class="lineNum"> 142 </span> : { -<span class="lineNum"> 143 </span><span class="lineCov"> 253742 : if (state == ITEMS)</span> -<span class="lineNum"> 144 </span><span class="lineCov"> 42290 : itemset |= item;</span> -<span class="lineNum"> 145 </span> : else -<span class="lineNum"> 146 </span><span class="lineCov"> 211452 : tagset |= item;</span> -<span class="lineNum"> 147 </span> : } -<span class="lineNum"> 148 </span> : -<span class="lineNum"> 149 </span><span class="lineCov"> 253744 : switch (sep)</span> -<span class="lineNum"> 150 </span> : { -<span class="lineNum"> 151 </span> : case '\n': -<span class="lineNum"> 152 </span><span class="lineCov"> 42290 : line++;</span> -<span class="lineNum"> 153 </span> : case input::Input::Eof: -<span class="lineNum"> 154 </span><span class="lineCov"> 42292 : if (!(itemset.empty() && tagset.empty()))</span> -<span class="lineNum"> 155 </span> : { -<span class="lineNum"> 156 </span><span class="lineCov"> 42290 : if (itemset.empty())</span> -<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : throw tagcoll::exception::Input(line, "no elements before `:' separator");</span> -<span class="lineNum"> 158 </span><span class="lineCov"> 42290 : if (tagset.empty())</span> -<span class="lineNum"> 159 </span><span class="lineNoCov"> 0 : *out = make_pair(itemset, wibble::Empty<std::string>());</span> -<span class="lineNum"> 160 </span> : else -<span class="lineNum"> 161 </span><span class="lineCov"> 42290 : *out = make_pair(itemset, tagset);</span> -<span class="lineNum"> 162 </span><span class="lineCov"> 42290 : ++out;</span> -<span class="lineNum"> 163 </span> : } -<span class="lineNum"> 164 </span><span class="lineCov"> 42292 : itemset.clear();</span> -<span class="lineNum"> 165 </span><span class="lineCov"> 42292 : tagset.clear();</span> -<span class="lineNum"> 166 </span><span class="lineCov"> 42292 : state = ITEMS;</span> -<span class="lineNum"> 167 </span><span class="lineCov"> 42292 : break;</span> -<span class="lineNum"> 168 </span> : case ':': -<span class="lineNum"> 169 </span><span class="lineCov"> 42290 : if (state == TAGS)</span> -<span class="lineNum"> 170 </span><span class="lineNoCov"> 0 : throw tagcoll::exception::Input(line, "separator `:' appears twice");</span> -<span class="lineNum"> 171 </span><span class="lineCov"> 42290 : state = TAGS;</span> -<span class="lineNum"> 172 </span> : break; -<span class="lineNum"> 173 </span> : default: -<span class="lineNum"> 174 </span><span class="lineCov"> 2 : break;</span> -<span class="lineNum"> 175 </span> : } -<span class="lineNum"> 176 </span> : } while (sep != input::Input::Eof); -<span class="lineNum"> 177 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 178 </span> : -<span class="lineNum"> 179 </span> : template<typename OUT> template<typename ITEMS, typename TAGS> -<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : PatchAssembler<OUT>& PatchAssembler<OUT>::operator=(const std::pair<ITEMS, TAGS>& data)</span> -<span class="lineNum"> 181 </span> : { -<span class="lineNum"> 182 </span><span class="lineNoCov"> 0 : std::set<std::string> added;</span> -<span class="lineNum"> 183 </span><span class="lineNoCov"> 0 : std::set<std::string> removed;</span> -<span class="lineNum"> 184 </span> : -<span class="lineNum"> 185 </span><span class="lineNoCov"> 0 : for (typename TAGS::const_iterator i = data.second.begin();</span> -<span class="lineNum"> 186 </span> : i != data.second.end(); ++i) -<span class="lineNum"> 187 </span> : { -<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : std::string tag = i->substr(1);</span> -<span class="lineNum"> 189 </span><span class="lineNoCov"> 0 : if (!tag.empty())</span> -<span class="lineNum"> 190 </span> : { -<span class="lineNum"> 191 </span><span class="lineNoCov"> 0 : if ((*i)[0] == '-')</span> -<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : removed.insert(tag);</span> -<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : else if ((*i)[0] == '+')</span> -<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : added.insert(tag);</span> -<span class="lineNum"> 195 </span> : } -<span class="lineNum"> 196 </span> : } -<span class="lineNum"> 197 </span> : -<span class="lineNum"> 198 </span><span class="lineNoCov"> 0 : for (typename ITEMS::const_iterator i = data.first.begin();</span> -<span class="lineNum"> 199 </span> : i != data.first.end(); ++i) -<span class="lineNum"> 200 </span> : { -<span class="lineNum"> 201 </span><span class="lineNoCov"> 0 : std::string it = *i;</span> -<span class="lineNum"> 202 </span><span class="lineNoCov"> 0 : if (!it.empty())</span> -<span class="lineNum"> 203 </span> : { -<span class="lineNum"> 204 </span><span class="lineNoCov"> 0 : *out = Patch<std::string, std::string>(it, added, removed);</span> -<span class="lineNum"> 205 </span><span class="lineNoCov"> 0 : ++out;</span> -<span class="lineNum"> 206 </span> : } -<span class="lineNum"> 207 </span> : } -<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : return *this;</span> -<span class="lineNum"> 209 </span> : } -<span class="lineNum"> 210 </span> : -<span class="lineNum"> 211 </span> : -<span class="lineNum"> 212 </span> : -<span class="lineNum"> 213 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 214 </span> : void outputPatch( -<span class="lineNum"> 215 </span> : ITEMSER& itemconv, -<span class="lineNum"> 216 </span> : TAGSER& tagconv, -<span class="lineNum"> 217 </span> : const PatchList<ITEM, TAG>& patch, -<span class="lineNum"> 218 </span> : FILE* out) -<span class="lineNum"> 219 </span> : { -<span class="lineNum"> 220 </span> : for (typename PatchList<ITEM, TAG>::const_iterator i = patch.begin(); -<span class="lineNum"> 221 </span> : i != patch.end(); i++) -<span class="lineNum"> 222 </span> : { -<span class="lineNum"> 223 </span> : string sitem = itemconv(i->first); -<span class="lineNum"> 224 </span> : if (fprintf(out, "%s: ", sitem.c_str()) < 0) -<span class="lineNum"> 225 </span> : throw wibble::exception::System("writing item"); -<span class="lineNum"> 226 </span> : -<span class="lineNum"> 227 </span> : std::set<string> stags; -<span class="lineNum"> 228 </span> : for (typename std::set<TAG>::const_iterator j = i->second.added.begin(); -<span class="lineNum"> 229 </span> : j != i->second.added.end(); j++) -<span class="lineNum"> 230 </span> : stags |= "+"+tagconv(*j); -<span class="lineNum"> 231 </span> : for (typename std::set<TAG>::const_iterator j = i->second.removed.begin(); -<span class="lineNum"> 232 </span> : j != i->second.removed.end(); j++) -<span class="lineNum"> 233 </span> : stags |= "-"+tagconv(*j); -<span class="lineNum"> 234 </span> : -<span class="lineNum"> 235 </span> : printTagset(stags, out); -<span class="lineNum"> 236 </span> : if (fprintf(out, "\n") < 0) -<span class="lineNum"> 237 </span> : throw wibble::exception::System("writing newline after tagset"); -<span class="lineNum"> 238 </span> : } -<span class="lineNum"> 239 </span> : } -<span class="lineNum"> 240 </span> : -<span class="lineNum"> 241 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 242 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 243 </span> : PatchBuilder<ITEM, TAG, ITEMSER, TAGSER>& PatchBuilder<ITEM, TAG, ITEMSER, TAGSER>::operator=(const std::pair<ITEMS, TAGS>& data) -<span class="lineNum"> 244 </span> : { -<span class="lineNum"> 245 </span> : std::set<TAG> added; -<span class="lineNum"> 246 </span> : std::set<TAG> removed; -<span class="lineNum"> 247 </span> : -<span class="lineNum"> 248 </span> : for (typename TAGS::const_iterator i = data.second.begin(); -<span class="lineNum"> 249 </span> : i != data.second.end(); ++i) -<span class="lineNum"> 250 </span> : { -<span class="lineNum"> 251 </span> : TAG tag = tagconv(i->substr(1)); -<span class="lineNum"> 252 </span> : if (tag != TAG()) -<span class="lineNum"> 253 </span> : { -<span class="lineNum"> 254 </span> : if ((*i)[0] == '-') -<span class="lineNum"> 255 </span> : removed.insert(tag); -<span class="lineNum"> 256 </span> : else if ((*i)[0] == '+') -<span class="lineNum"> 257 </span> : added.insert(tag); -<span class="lineNum"> 258 </span> : } -<span class="lineNum"> 259 </span> : } -<span class="lineNum"> 260 </span> : -<span class="lineNum"> 261 </span> : for (typename ITEMS::const_iterator i = data.first.begin(); -<span class="lineNum"> 262 </span> : i != data.first.end(); ++i) -<span class="lineNum"> 263 </span> : { -<span class="lineNum"> 264 </span> : ITEM it = itemconv(*i); -<span class="lineNum"> 265 </span> : if (it != ITEM()) -<span class="lineNum"> 266 </span> : patch.addPatch(Patch<ITEM, TAG>(it, added, removed)); -<span class="lineNum"> 267 </span> : } -<span class="lineNum"> 268 </span> : return *this; -<span class="lineNum"> 269 </span> : } -<span class="lineNum"> 270 </span> : -<span class="lineNum"> 271 </span> : -<span class="lineNum"> 272 </span> : template<typename ITEM, typename TAG, typename ITEMSER, typename TAGSER> -<span class="lineNum"> 273 </span> : PatchList<ITEM, TAG> parsePatch( -<span class="lineNum"> 274 </span> : ITEMSER& itemconv, -<span class="lineNum"> 275 </span> : TAGSER& tagconv, -<span class="lineNum"> 276 </span> : input::Input& in) -<span class="lineNum"> 277 </span> : { -<span class="lineNum"> 278 </span> : PatchList<ITEM, TAG> patch; -<span class="lineNum"> 279 </span> : parse(in, patchBuilder(patch, itemconv, tagconv)); -<span class="lineNum"> 280 </span> : return patch; -<span class="lineNum"> 281 </span> : } -<span class="lineNum"> 282 </span> : -<span class="lineNum"> 283 </span> : } -<span class="lineNum"> 284 </span><span class="lineCov"> 6 : }</span> -<span class="lineNum"> 285 </span> : -<span class="lineNum"> 286 </span> : #include <tagcoll/patch.tcc> -<span class="lineNum"> 287 </span> : -<span class="lineNum"> 288 </span> : #endif -<span class="lineNum"> 289 </span> : -<span class="lineNum"> 290 </span> : // vim:set ts=4 sw=4: -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html deleted file mode 100644 index 99bba0c..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html +++ /dev/null @@ -1,400 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/base.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - base.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">11</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">11</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_BASE_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_BASE_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Base mixins for tagged collections -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <wibble/mixin.h> -<span class="lineNum"> 27 </span> : #include <vector> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace std { -<span class="lineNum"> 30 </span> : template<typename A, typename B> class pair; -<span class="lineNum"> 31 </span> : } -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : namespace tagcoll { -<span class="lineNum"> 34 </span> : namespace coll { -<span class="lineNum"> 35 </span> : -<span class="lineNum"> 36 </span> : template<typename T> -<span class="lineNum"> 37 </span> : class coll_traits; -<span class="lineNum"> 38 </span> : -<span class="lineNum"> 39 </span> : /** -<span class="lineNum"> 40 </span> : * Interface for all collections of tagged items. -<span class="lineNum"> 41 </span> : * -<span class="lineNum"> 42 </span> : * \note The point of a collection is to track the tags attached to items, and -<span class="lineNum"> 43 </span> : * not to store the items themselves. This means that collections are not -<span class="lineNum"> 44 </span> : * required to keep track of items with no tags. -<span class="lineNum"> 45 </span> : */ -<span class="lineNum"> 46 </span> : template<typename Self> -<span class="lineNum"> 47 </span> : class ReadonlyCollection -<span class="lineNum"> 48 </span><span class="lineCov"> 37 : {</span> -<span class="lineNum"> 49 </span><span class="lineCov"> 84611 : const Self& self() const { return *static_cast<const Self*>(this); }</span> -<span class="lineNum"> 50 </span> : -<span class="lineNum"> 51 </span> : class CardinalityOrder -<span class="lineNum"> 52 </span> : { -<span class="lineNum"> 53 </span> : const Self& coll; -<span class="lineNum"> 54 </span> : public: -<span class="lineNum"> 55 </span> : CardinalityOrder(const Self& coll) : coll(coll) {} -<span class="lineNum"> 56 </span> : bool operator()(const typename coll_traits<Self>::tag_type& t1, const typename coll_traits<Self>::tag_type& t2) -<span class="lineNum"> 57 </span> : { -<span class="lineNum"> 58 </span> : // Returns true if t1 precedes t2, and false otherwise -<span class="lineNum"> 59 </span> : return coll.getCardinality(t1) < coll.getCardinality(t2); -<span class="lineNum"> 60 </span> : } -<span class="lineNum"> 61 </span> : }; -<span class="lineNum"> 62 </span> : -<span class="lineNum"> 63 </span> : class DiscriminanceOrder -<span class="lineNum"> 64 </span> : { -<span class="lineNum"> 65 </span> : const Self& coll; -<span class="lineNum"> 66 </span> : public: -<span class="lineNum"> 67 </span> : DiscriminanceOrder(const Self& coll) : coll(coll) {} -<span class="lineNum"> 68 </span> : bool operator()(const typename coll_traits<Self>::tag_type& t1, const typename coll_traits<Self>::tag_type& t2) -<span class="lineNum"> 69 </span> : { -<span class="lineNum"> 70 </span> : // Returns true if t1 precedes t2, and false otherwise -<span class="lineNum"> 71 </span> : return coll.getDiscriminance(t1) < coll.getDiscriminance(t2); -<span class="lineNum"> 72 </span> : } -<span class="lineNum"> 73 </span> : }; -<span class="lineNum"> 74 </span> : -<span class="lineNum"> 75 </span> : template<typename COLL> -<span class="lineNum"> 76 </span> : class RelevanceOrder -<span class="lineNum"> 77 </span> : { -<span class="lineNum"> 78 </span> : const COLL& first; -<span class="lineNum"> 79 </span> : const Self& second; -<span class="lineNum"> 80 </span> : public: -<span class="lineNum"> 81 </span> : RelevanceOrder(const COLL& first, const Self& second) -<span class="lineNum"> 82 </span> : : first(first), second(second) {} -<span class="lineNum"> 83 </span> : bool operator()(const typename coll_traits<Self>::tag_type& t1, const typename coll_traits<Self>::tag_type& t2); -<span class="lineNum"> 84 </span> : }; -<span class="lineNum"> 85 </span> : -<span class="lineNum"> 86 </span> : /** -<span class="lineNum"> 87 </span> : * Get the items which are tagged with at least the tag `tag' -<span class="lineNum"> 88 </span> : * -<span class="lineNum"> 89 </span> : * \return -<span class="lineNum"> 90 </span> : * The items found, or an empty set if no items have that tag -<span class="lineNum"> 91 </span> : */ -<span class="lineNum"> 92 </span> : //virtual std::set<ITEM> getItemsHavingTag(const TAG& tag) const = 0; -<span class="lineNum"> 93 </span> : -<span class="lineNum"> 94 </span> : /** -<span class="lineNum"> 95 </span> : * Get the tags attached to an item. -<span class="lineNum"> 96 </span> : * -<span class="lineNum"> 97 </span> : * \param item -<span class="lineNum"> 98 </span> : * The item to query -<span class="lineNum"> 99 </span> : * \return -<span class="lineNum"> 100 </span> : * The set of tags, or an empty set if the item has no tags or it does -<span class="lineNum"> 101 </span> : * not exist. -<span class="lineNum"> 102 </span> : */ -<span class="lineNum"> 103 </span> : //virtual std::set<TAG> getTagsOfItem(const ITEM& item) const = 0; -<span class="lineNum"> 104 </span> : -<span class="lineNum"> 105 </span> : public: -<span class="lineNum"> 106 </span> : /** -<span class="lineNum"> 107 </span> : * Check if the collection contains a tag -<span class="lineNum"> 108 </span> : * -<span class="lineNum"> 109 </span> : * \param tag -<span class="lineNum"> 110 </span> : * The tag to look for -<span class="lineNum"> 111 </span> : * \return -<span class="lineNum"> 112 </span> : * true if the collection contains tag, false otherwise -<span class="lineNum"> 113 </span> : */ -<span class="lineNum"> 114 </span> : bool hasTag(const typename coll_traits<Self>::tag_type& tag) const; -<span class="lineNum"> 115 </span> : -<span class="lineNum"> 116 </span> : /** -<span class="lineNum"> 117 </span> : * Get the tags of item `item'. Return an empty set if `item' does not exist -<span class="lineNum"> 118 </span> : */ -<span class="lineNum"> 119 </span> : //std::set<Self::tag_type> getTags(const typename Self::item_type& item) const = 0; -<span class="lineNum"> 120 </span> : -<span class="lineNum"> 121 </span> : /** -<span class="lineNum"> 122 </span> : * Get all the tags attached to the items in a set. -<span class="lineNum"> 123 </span> : * -<span class="lineNum"> 124 </span> : * \param items -<span class="lineNum"> 125 </span> : * The items to query -<span class="lineNum"> 126 </span> : * \return -<span class="lineNum"> 127 </span> : * The set of tags, or an empty set if the items have no tags or do not -<span class="lineNum"> 128 </span> : * exist. -<span class="lineNum"> 129 </span> : */ -<span class="lineNum"> 130 </span> : template<typename ITEMS> -<span class="lineNum"> 131 </span> : typename coll_traits<Self>::tagset_type getTagsOfItems(const ITEMS& items) const; -<span class="lineNum"> 132 </span> : -<span class="lineNum"> 133 </span> : /** -<span class="lineNum"> 134 </span> : * Get the items with tag `tag'. Return an empty set if `tag' does not exist -<span class="lineNum"> 135 </span> : */ -<span class="lineNum"> 136 </span> : //std::set<typename Self::item_type> getItems(const TAG& tag) const { return getItemsHavingTag(tag); } -<span class="lineNum"> 137 </span> : -<span class="lineNum"> 138 </span> : /** -<span class="lineNum"> 139 </span> : * Get the items which are tagged with at least the tags `tags' -<span class="lineNum"> 140 </span> : * -<span class="lineNum"> 141 </span> : * \return -<span class="lineNum"> 142 </span> : * The items found, or an empty set if no items have that tag -<span class="lineNum"> 143 </span> : */ -<span class="lineNum"> 144 </span> : template<typename TAGS> -<span class="lineNum"> 145 </span><span class="lineCov"> 2 : typename coll_traits<Self>::itemset_type getItemsHavingTags(const TAGS& tags) const;</span> -<span class="lineNum"> 146 </span> : -<span class="lineNum"> 147 </span> : /** -<span class="lineNum"> 148 </span> : * Get the set of all the items that have tags according to this collection -<span class="lineNum"> 149 </span> : */ -<span class="lineNum"> 150 </span> : //virtual std::set<Self::item_type> getTaggedItems() const = 0; -<span class="lineNum"> 151 </span> : -<span class="lineNum"> 152 </span> : /** -<span class="lineNum"> 153 </span> : * Get the set of all the tags in this collection -<span class="lineNum"> 154 </span> : */ -<span class="lineNum"> 155 </span> : //virtual std::set<Self::tag_type> getAllTags() const = 0; -<span class="lineNum"> 156 </span> : -<span class="lineNum"> 157 </span> : /** -<span class="lineNum"> 158 </span> : * Get all the tags in the collectin, as a vector -<span class="lineNum"> 159 </span> : */ -<span class="lineNum"> 160 </span> : std::vector<typename coll_traits<Self>::tag_type> getAllTagsAsVector() const; -<span class="lineNum"> 161 </span> : -<span class="lineNum"> 162 </span> : /** -<span class="lineNum"> 163 </span> : * Get the cardinality of tag `tag' (that is, the number of items who have it) -<span class="lineNum"> 164 </span> : */ -<span class="lineNum"> 165 </span> : unsigned int getCardinality(const typename coll_traits<Self>::tag_type& tag) const; -<span class="lineNum"> 166 </span> : -<span class="lineNum"> 167 </span> : /** -<span class="lineNum"> 168 </span> : * Return the discriminance value for this tag, that is, the minimum number -<span class="lineNum"> 169 </span> : * of packages that would be eliminated by selecting only those tagged with -<span class="lineNum"> 170 </span> : * this tag or only those not tagged with this tag. -<span class="lineNum"> 171 </span> : */ -<span class="lineNum"> 172 </span> : unsigned int getDiscriminance(const typename coll_traits<Self>::tag_type& tag) const -<span class="lineNum"> 173 </span> : { -<span class="lineNum"> 174 </span> : return self().getCardinality(tag) < self().tagCount() - self().getCardinality(tag) ? -<span class="lineNum"> 175 </span> : self().getCardinality(tag) : -<span class="lineNum"> 176 </span> : self().tagCount() - self().getCardinality(tag); -<span class="lineNum"> 177 </span> : } -<span class="lineNum"> 178 </span> : -<span class="lineNum"> 179 </span> : /** -<span class="lineNum"> 180 </span> : * Get the set of all tags in this collection that appear in tagsets -<span class="lineNum"> 181 </span> : * containing `tags' -<span class="lineNum"> 182 </span> : * -<span class="lineNum"> 183 </span> : * Example: -<span class="lineNum"> 184 </span> : * \code -<span class="lineNum"> 185 </span> : * void refineSelection(const std::set<Tag>& selection) -<span class="lineNum"> 186 </span> : * { -<span class="lineNum"> 187 </span> : * std::set<Tag> extraTags = collection.getCompanionTags(selection); -<span class="lineNum"> 188 </span> : * tagMenu.setAvailableOptions(extraTags); -<span class="lineNum"> 189 </span> : * } -<span class="lineNum"> 190 </span> : * \endcode -<span class="lineNum"> 191 </span> : */ -<span class="lineNum"> 192 </span> : template<typename TAGS> -<span class="lineNum"> 193 </span> : typename coll_traits<Self>::tagset_type getCompanionTags(const TAGS& tags) const; -<span class="lineNum"> 194 </span> : -<span class="lineNum"> 195 </span> : /** -<span class="lineNum"> 196 </span> : * Get the related items at the given maximum distance -<span class="lineNum"> 197 </span> : * -<span class="lineNum"> 198 </span> : * Examples: -<span class="lineNum"> 199 </span> : * \code -<span class="lineNum"> 200 </span> : * // Get the items related to a given one, at the given distance -<span class="lineNum"> 201 </span> : * std::set<Item> getRelated(const Item& item, int distance) -<span class="lineNum"> 202 </span> : * { -<span class="lineNum"> 203 </span> : * std::set<Item> res = collection.getRelatedItems(collection.getTags(item), distance); -<span class="lineNum"> 204 </span> : * return res - item; -<span class="lineNum"> 205 </span> : * } -<span class="lineNum"> 206 </span> : * -<span class="lineNum"> 207 </span> : * // Get the items related to the given ones, at the given distance -<span class="lineNum"> 208 </span> : * std::set<Item> getRelated(const std::set<Item>& items, int distance) -<span class="lineNum"> 209 </span> : * { -<span class="lineNum"> 210 </span> : * std::set<Item> res = collection.getRelatedItems(collection.getTags(items), distance); -<span class="lineNum"> 211 </span> : * return res - items; -<span class="lineNum"> 212 </span> : * } -<span class="lineNum"> 213 </span> : * -<span class="lineNum"> 214 </span> : * // Get the related items, increasing the distance until it finds at -<span class="lineNum"> 215 </span> : * // least 'minimum' items -<span class="lineNum"> 216 </span> : * std::set<Item> getRelated(const Item& item, int minimum) -<span class="lineNum"> 217 </span> : * { -<span class="lineNum"> 218 </span> : * std::set<Tag> tags = collection.getTags(item); -<span class="lineNum"> 219 </span> : * std::set<Item> res; -<span class="lineNum"> 220 </span> : * for (int i = 0; i < tags.size() && res.size() < minimum; i++) -<span class="lineNum"> 221 </span> : * res += collection.getRelatedItems(tags, i); -<span class="lineNum"> 222 </span> : * return res - item; -<span class="lineNum"> 223 </span> : * } -<span class="lineNum"> 224 </span> : * \endcode -<span class="lineNum"> 225 </span> : */ -<span class="lineNum"> 226 </span> : template<typename TAGS> -<span class="lineNum"> 227 </span> : typename coll_traits<Self>::itemset_type getRelatedItems(const TAGS& tags, int maxdistance = 1) const; -<span class="lineNum"> 228 </span> : -<span class="lineNum"> 229 </span> : /** -<span class="lineNum"> 230 </span> : * Output all the contents of the collection to an output iterator -<span class="lineNum"> 231 </span> : */ -<span class="lineNum"> 232 </span> : template<typename OUT> -<span class="lineNum"> 233 </span><span class="lineCov"> 5 : void output(OUT out) const;</span> -<span class="lineNum"> 234 </span> : -<span class="lineNum"> 235 </span> : /** -<span class="lineNum"> 236 </span> : * Send to a consumer all the items which are tagged with at least the -<span class="lineNum"> 237 </span> : * given tags -<span class="lineNum"> 238 </span> : */ -<span class="lineNum"> 239 </span> : template<typename TAGS, typename OUT> -<span class="lineNum"> 240 </span> : void outputHavingTags(const TAGS& tags, OUT out) const; -<span class="lineNum"> 241 </span> : -<span class="lineNum"> 242 </span> : /** -<span class="lineNum"> 243 </span> : * Get a vector containing all tags in this collection, sorted by -<span class="lineNum"> 244 </span> : * increasing cardinality -<span class="lineNum"> 245 </span> : */ -<span class="lineNum"> 246 </span> : std::vector<typename coll_traits<Self>::tag_type> tagsInCardinalityOrder() const; -<span class="lineNum"> 247 </span> : -<span class="lineNum"> 248 </span> : /** -<span class="lineNum"> 249 </span> : * Get a vector containing all tags in this collection, sorted by -<span class="lineNum"> 250 </span> : * increasing discriminance value (@see getDiscriminance) -<span class="lineNum"> 251 </span> : */ -<span class="lineNum"> 252 </span> : std::vector<typename coll_traits<Self>::tag_type> tagsInDiscriminanceOrder() const; -<span class="lineNum"> 253 </span> : -<span class="lineNum"> 254 </span> : /** -<span class="lineNum"> 255 </span> : * Get a vector containing all tags in this collection, sorted by -<span class="lineNum"> 256 </span> : * increasing relevance to the filtering applied between coll and this -<span class="lineNum"> 257 </span> : * collection -<span class="lineNum"> 258 </span> : */ -<span class="lineNum"> 259 </span> : template<typename COLL> -<span class="lineNum"> 260 </span> : std::vector<typename coll_traits<Self>::tag_type> tagsInRelevanceOrder(const COLL& coll) const; -<span class="lineNum"> 261 </span> : }; -<span class="lineNum"> 262 </span> : -<span class="lineNum"> 263 </span> : -<span class="lineNum"> 264 </span> : /** -<span class="lineNum"> 265 </span> : * Interface for all collections of tagged items. -<span class="lineNum"> 266 </span> : * -<span class="lineNum"> 267 </span> : * \note The point of a collection is to track the tags attached to items, and -<span class="lineNum"> 268 </span> : * not to store the items themselves. This means that collections are not -<span class="lineNum"> 269 </span> : * required to keep track of items with no tags. -<span class="lineNum"> 270 </span> : */ -<span class="lineNum"> 271 </span> : template<typename Self> -<span class="lineNum"> 272 </span> : class Collection : public ReadonlyCollection<Self> -<span class="lineNum"> 273 </span><span class="lineCov"> 27 : {</span> -<span class="lineNum"> 274 </span> : //protected: -<span class="lineNum"> 275 </span> : /* -<span class="lineNum"> 276 </span> : * Implementation note: to avoid problems with classes implementing only -<span class="lineNum"> 277 </span> : * some of the virtual methods, they are given different names. The common -<span class="lineNum"> 278 </span> : * 'comsume' methods are just inlined calls to the right virtual functions, -<span class="lineNum"> 279 </span> : * and are a way of keeping the unoverridden methods from being hidden. -<span class="lineNum"> 280 </span> : */ -<span class="lineNum"> 281 </span> : -<span class="lineNum"> 282 </span> : //void consumeItemUntagged(const ITEM&) {} -<span class="lineNum"> 283 </span> : //void consumeItemsUntagged(const std::set<ITEM>&) {} -<span class="lineNum"> 284 </span> : -<span class="lineNum"> 285 </span> : public: -<span class="lineNum"> 286 </span> : //virtual ~Collection() {} -<span class="lineNum"> 287 </span> : -<span class="lineNum"> 288 </span> : /** -<span class="lineNum"> 289 </span> : * Apply a patch to the collection -<span class="lineNum"> 290 </span> : * -<span class="lineNum"> 291 </span> : * Example: -<span class="lineNum"> 292 </span> : * \code -<span class="lineNum"> 293 </span> : * void perform(const PatchList<ITEM, TAG>& change) -<span class="lineNum"> 294 </span> : * { -<span class="lineNum"> 295 </span> : * collection.applyChange(change); -<span class="lineNum"> 296 </span> : * undo.push_back(change.getReverse()); -<span class="lineNum"> 297 </span> : * } -<span class="lineNum"> 298 </span> : * \endcode -<span class="lineNum"> 299 </span> : */ -<span class="lineNum"> 300 </span> : // void applyChange( -<span class="lineNum"> 301 </span> : // const PatchList< -<span class="lineNum"> 302 </span> : // typename coll_traits<Self>::item_type, -<span class="lineNum"> 303 </span> : // typename coll_traits<Self>::tag_type>& change); -<span class="lineNum"> 304 </span> : }; -<span class="lineNum"> 305 </span> : -<span class="lineNum"> 306 </span> : -<span class="lineNum"> 307 </span> : template<typename COLL> -<span class="lineNum"> 308 </span> : class Inserter : public wibble::mixin::OutputIterator< Inserter<COLL> > -<span class="lineNum"> 309 </span> : { -<span class="lineNum"> 310 </span> : COLL& coll; -<span class="lineNum"> 311 </span> : -<span class="lineNum"> 312 </span> : public: -<span class="lineNum"> 313 </span><span class="lineCov"> 10 : Inserter(COLL& coll) : coll(coll) {}</span> -<span class="lineNum"> 314 </span> : -<span class="lineNum"> 315 </span> : template<typename Items, typename Tags> -<span class="lineNum"> 316 </span><span class="lineCov"> 63426 : Inserter<COLL>& operator=(const std::pair<Items, Tags>& data)</span> -<span class="lineNum"> 317 </span> : { -<span class="lineNum"> 318 </span><span class="lineCov"> 63426 : coll.insert(data.first, data.second);</span> -<span class="lineNum"> 319 </span><span class="lineCov"> 63426 : return *this;</span> -<span class="lineNum"> 320 </span> : } -<span class="lineNum"> 321 </span> : }; -<span class="lineNum"> 322 </span> : -<span class="lineNum"> 323 </span> : template<typename COLL> -<span class="lineNum"> 324 </span><span class="lineCov"> 10 : Inserter<COLL> inserter(COLL& target)</span> -<span class="lineNum"> 325 </span> : { -<span class="lineNum"> 326 </span><span class="lineCov"> 10 : return Inserter<COLL>(target);</span> -<span class="lineNum"> 327 </span> : } -<span class="lineNum"> 328 </span> : -<span class="lineNum"> 329 </span> : } -<span class="lineNum"> 330 </span> : } -<span class="lineNum"> 331 </span> : -<span class="lineNum"> 332 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 333 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html deleted file mode 100644 index 5389355..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html +++ /dev/null @@ -1,258 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - base.tcc</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">18</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">88.9 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">16</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_BASE_TCC -<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_BASE_TCC -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Base mixins for tagged collections -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <tagcoll/coll/base.h> -<span class="lineNum"> 27 </span> : #include <tagcoll/utils/set.h> -<span class="lineNum"> 28 </span> : #include <algorithm> -<span class="lineNum"> 29 </span> : -<span class="lineNum"> 30 </span> : namespace tagcoll { -<span class="lineNum"> 31 </span> : namespace coll { -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : template<typename T> -<span class="lineNum"> 34 </span> : class coll_traits; -<span class="lineNum"> 35 </span> : -<span class="lineNum"> 36 </span> : template<typename Self> template<typename COLL> -<span class="lineNum"> 37 </span> : bool ReadonlyCollection<Self>::RelevanceOrder<COLL>::operator()( -<span class="lineNum"> 38 </span> : const typename coll_traits<Self>::tag_type& t1, -<span class="lineNum"> 39 </span> : const typename coll_traits<Self>::tag_type& t2) -<span class="lineNum"> 40 </span> : { -<span class="lineNum"> 41 </span> : // New cardinality divided by the square root of the old cardinality. -<span class="lineNum"> 42 </span> : // The square root is used to downplay the very common tags a bit -<span class="lineNum"> 43 </span> : int csub1 = second.getCardinality(t1); -<span class="lineNum"> 44 </span> : float cfull1 = first.getCardinality(t1); -<span class="lineNum"> 45 </span> : int csub2 = second.getCardinality(t2); -<span class="lineNum"> 46 </span> : float cfull2 = first.getCardinality(t2); -<span class="lineNum"> 47 </span> : float rel1 = (float)(csub1 * csub1) / cfull1; -<span class="lineNum"> 48 </span> : float rel2 = (float)(csub2 * csub2) / cfull2; -<span class="lineNum"> 49 </span> : -<span class="lineNum"> 50 </span> : return rel1 < rel2; -<span class="lineNum"> 51 </span> : // return 10000 * second.getCardinality(t1) / first.getCardinality(t1) -<span class="lineNum"> 52 </span> : // < 10000 * second.getCardinality(t2) / first.getCardinality(t2); -<span class="lineNum"> 53 </span> : } -<span class="lineNum"> 54 </span> : -<span class="lineNum"> 55 </span> : -<span class="lineNum"> 56 </span> : template<typename Self> -<span class="lineNum"> 57 </span> : bool ReadonlyCollection<Self>::hasTag(const typename coll_traits<Self>::tag_type& tag) const -<span class="lineNum"> 58 </span> : { -<span class="lineNum"> 59 </span> : return !self().getItemsHavingTag(tag).empty(); -<span class="lineNum"> 60 </span> : } -<span class="lineNum"> 61 </span> : -<span class="lineNum"> 62 </span> : template<typename Self> template<typename ITEMS> -<span class="lineNum"> 63 </span><span class="lineCov"> 1 : typename coll_traits<Self>::tagset_type ReadonlyCollection<Self>::getTagsOfItems(const ITEMS& items) const</span> -<span class="lineNum"> 64 </span> : { -<span class="lineNum"> 65 </span> : using namespace wibble::operators; -<span class="lineNum"> 66 </span><span class="lineCov"> 1 : typename coll_traits<Self>::tagset_type res;</span> -<span class="lineNum"> 67 </span><span class="lineCov"> 2 : for (typename ITEMS::const_iterator i = items.begin();</span> -<span class="lineNum"> 68 </span> : i != items.end(); i++) -<span class="lineNum"> 69 </span><span class="lineCov"> 1 : res |= self().getTagsOfItem(*i);</span> -<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : return res;</span> -<span class="lineNum"> 71 </span> : } -<span class="lineNum"> 72 </span> : -<span class="lineNum"> 73 </span> : template<typename Self> template<typename TAGS> -<span class="lineNum"> 74 </span> : typename coll_traits<Self>::itemset_type ReadonlyCollection<Self>::getItemsHavingTags(const TAGS& tags) const -<span class="lineNum"> 75 </span> : { -<span class="lineNum"> 76 </span> : using namespace wibble::operators; -<span class="lineNum"> 77 </span><span class="lineCov"> 2 : if (tags.empty())</span> -<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : return typename coll_traits<Self>::itemset_type();</span> -<span class="lineNum"> 79 </span> : -<span class="lineNum"> 80 </span><span class="lineCov"> 2 : typename TAGS::const_iterator i = tags.begin();</span> -<span class="lineNum"> 81 </span><span class="lineCov"> 2 : typename coll_traits<Self>::itemset_type res = self().getItemsHavingTag(*i);</span> -<span class="lineNum"> 82 </span> : -<span class="lineNum"> 83 </span><span class="lineCov"> 9 : for (++i ; i != tags.end(); ++i)</span> -<span class="lineNum"> 84 </span><span class="lineCov"> 7 : res &= self().getItemsHavingTag(*i);</span> -<span class="lineNum"> 85 </span> : -<span class="lineNum"> 86 </span><span class="lineCov"> 2 : return res;</span> -<span class="lineNum"> 87 </span> : } -<span class="lineNum"> 88 </span> : -<span class="lineNum"> 89 </span> : template<typename Self> -<span class="lineNum"> 90 </span> : std::vector<typename coll_traits<Self>::tag_type> ReadonlyCollection<Self>::getAllTagsAsVector() const -<span class="lineNum"> 91 </span> : { -<span class="lineNum"> 92 </span> : std::set<typename coll_traits<Self>::tag_type> asSet = self().getAllTags(); -<span class="lineNum"> 93 </span> : std::vector<typename coll_traits<Self>::tag_type> res; -<span class="lineNum"> 94 </span> : res.reserve(asSet.size()); -<span class="lineNum"> 95 </span> : std::copy(asSet.begin(), asSet.end(), back_inserter(res)); -<span class="lineNum"> 96 </span> : return res; -<span class="lineNum"> 97 </span> : } -<span class="lineNum"> 98 </span> : -<span class="lineNum"> 99 </span> : template<typename Self> -<span class="lineNum"> 100 </span> : unsigned int ReadonlyCollection<Self>::getCardinality(const typename coll_traits<Self>::tag_type& tag) const -<span class="lineNum"> 101 </span> : { -<span class="lineNum"> 102 </span> : return self().getItemsHavingTag(tag).size(); -<span class="lineNum"> 103 </span> : } -<span class="lineNum"> 104 </span> : -<span class="lineNum"> 105 </span> : template<typename Self> template<typename TAGS> -<span class="lineNum"> 106 </span> : typename coll_traits<Self>::tagset_type ReadonlyCollection<Self>::getCompanionTags(const TAGS& tags) const -<span class="lineNum"> 107 </span> : { -<span class="lineNum"> 108 </span> : using namespace wibble::operators; -<span class="lineNum"> 109 </span> : return self().getTagsOfItems(self().getItemsHavingTags(tags)) - tags; -<span class="lineNum"> 110 </span> : } -<span class="lineNum"> 111 </span> : -<span class="lineNum"> 112 </span> : template<typename Self> template<typename TAGS> -<span class="lineNum"> 113 </span> : typename coll_traits<Self>::itemset_type ReadonlyCollection<Self>::getRelatedItems(const TAGS& tags, int maxdistance) const -<span class="lineNum"> 114 </span> : { -<span class="lineNum"> 115 </span> : using namespace wibble::operators; -<span class="lineNum"> 116 </span> : -<span class="lineNum"> 117 </span> : typename coll_traits<Self>::itemset_type packages; -<span class="lineNum"> 118 </span> : typename coll_traits<Self>::itemset_type res; -<span class="lineNum"> 119 </span> : -<span class="lineNum"> 120 </span> : // First get a list of packages that have a non-empty intersection with `tags' -<span class="lineNum"> 121 </span> : for (typename TAGS::const_iterator i = tags.begin(); i != tags.end(); i++) -<span class="lineNum"> 122 </span> : packages |= self().getItemsHavingTag(*i); -<span class="lineNum"> 123 </span> : -<span class="lineNum"> 124 </span> : // Then keep only those within the given distance -<span class="lineNum"> 125 </span> : for (typename coll_traits<Self>::itemset_type::const_iterator i = packages.begin(); i != packages.end(); i++) -<span class="lineNum"> 126 </span> : { -<span class="lineNum"> 127 </span> : int dist = utils::set_distance(tags, self().getTagsOfItem(*i)); -<span class="lineNum"> 128 </span> : if (dist >= 0 && dist <= maxdistance) -<span class="lineNum"> 129 </span> : res |= *i; -<span class="lineNum"> 130 </span> : } -<span class="lineNum"> 131 </span> : -<span class="lineNum"> 132 </span> : return res; -<span class="lineNum"> 133 </span> : } -<span class="lineNum"> 134 </span> : -<span class="lineNum"> 135 </span> : template<typename Self> template<typename OUT> -<span class="lineNum"> 136 </span><span class="lineCov"> 4 : void ReadonlyCollection<Self>::output(OUT out) const</span> -<span class="lineNum"> 137 </span> : { -<span class="lineNum"> 138 </span><span class="lineCov"> 126890 : for (typename Self::const_iterator i = self().begin();</span> -<span class="lineNum"> 139 </span> : i != self().end(); ++i) -<span class="lineNum"> 140 </span> : { -<span class="lineNum"> 141 </span><span class="lineCov"> 84583 : *out = make_pair(wibble::singleton(i->first), i->second);</span> -<span class="lineNum"> 142 </span><span class="lineCov"> 84587 : ++out;</span> -<span class="lineNum"> 143 </span> : } -<span class="lineNum"> 144 </span><span class="lineCov"> 9 : }</span> -<span class="lineNum"> 145 </span> : -<span class="lineNum"> 146 </span> : template<typename Self> template<typename TAGS, typename OUT> -<span class="lineNum"> 147 </span> : void ReadonlyCollection<Self>::outputHavingTags(const TAGS& tags, OUT out) const -<span class="lineNum"> 148 </span> : { -<span class="lineNum"> 149 </span> : typename coll_traits<Self>::itemset_type items = self().getItemsHavingTags(tags); -<span class="lineNum"> 150 </span> : for (typename coll_traits<Self>::itemset_type::const_iterator i = items.begin(); -<span class="lineNum"> 151 </span> : i != items.end(); ++i) -<span class="lineNum"> 152 </span> : { -<span class="lineNum"> 153 </span> : *out = std::make_pair(wibble::singleton(*i), self().getTagsOfItem(*i)); -<span class="lineNum"> 154 </span> : ++out; -<span class="lineNum"> 155 </span> : } -<span class="lineNum"> 156 </span> : } -<span class="lineNum"> 157 </span> : -<span class="lineNum"> 158 </span> : template<typename Self> -<span class="lineNum"> 159 </span> : std::vector<typename coll_traits<Self>::tag_type> ReadonlyCollection<Self>::tagsInCardinalityOrder() const -<span class="lineNum"> 160 </span> : { -<span class="lineNum"> 161 </span> : std::vector<typename coll_traits<Self>::tag_type> res = self().getAllTagsAsVector(); -<span class="lineNum"> 162 </span> : std::sort(res.begin(), res.end(), CardinalityOrder(self())); -<span class="lineNum"> 163 </span> : return res; -<span class="lineNum"> 164 </span> : } -<span class="lineNum"> 165 </span> : -<span class="lineNum"> 166 </span> : template<typename Self> -<span class="lineNum"> 167 </span> : std::vector<typename coll_traits<Self>::tag_type> ReadonlyCollection<Self>::tagsInDiscriminanceOrder() const -<span class="lineNum"> 168 </span> : { -<span class="lineNum"> 169 </span> : std::vector<typename coll_traits<Self>::tag_type> res = self().getAllTagsAsVector(); -<span class="lineNum"> 170 </span> : std::sort(res.begin(), res.end(), DiscriminanceOrder(self())); -<span class="lineNum"> 171 </span> : return res; -<span class="lineNum"> 172 </span> : } -<span class="lineNum"> 173 </span> : -<span class="lineNum"> 174 </span> : /** -<span class="lineNum"> 175 </span> : * Get a vector containing all tags in this collection, sorted by -<span class="lineNum"> 176 </span> : * increasing relevance to the filtering applied between coll and this -<span class="lineNum"> 177 </span> : * collection -<span class="lineNum"> 178 </span> : */ -<span class="lineNum"> 179 </span> : template<typename Self> template<typename COLL> -<span class="lineNum"> 180 </span> : std::vector<typename coll_traits<Self>::tag_type> ReadonlyCollection<Self>::tagsInRelevanceOrder(const COLL& coll) const -<span class="lineNum"> 181 </span> : { -<span class="lineNum"> 182 </span> : std::vector<typename coll_traits<Self>::tag_type> res = self().getAllTagsAsVector(); -<span class="lineNum"> 183 </span> : std::sort(res.begin(), res.end(), RelevanceOrder<COLL>(coll, self())); -<span class="lineNum"> 184 </span> : return res; -<span class="lineNum"> 185 </span> : } -<span class="lineNum"> 186 </span> : -<span class="lineNum"> 187 </span> : } -<span class="lineNum"> 188 </span><span class="lineCov"> 6 : }</span> -<span class="lineNum"> 189 </span> : -<span class="lineNum"> 190 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 191 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html deleted file mode 100644 index 0623d19..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html +++ /dev/null @@ -1,137 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/coll</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">177</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">79.7 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">141</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <center> - <table width="80%" cellpadding=2 cellspacing=1 border=0> - - <tr> - <td width="50%"><br></td> - <td width="15%"></td> - <td width="15%"></td> - <td width="20%"></td> - </tr> - - <tr> - <td class="tableHead">Filename</td> - <td class="tableHead" colspan=3>Coverage</td> - </tr> - - <tr> - <td class="coverFile"><a href="base.h.gcov.html">base.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">11 / 11 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="base.tcc.gcov.html">base.tcc</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=89 height=10 alt="88.9%"><img src="../../../../../snow.png" width=11 height=10 alt="88.9%"></td></tr></table> - </td> - <td class="coverPerHi">88.9 %</td> - <td class="coverNumHi">16 / 18 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="intdiskindex.h.gcov.html">intdiskindex.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=92 height=10 alt="92.1%"><img src="../../../../../snow.png" width=8 height=10 alt="92.1%"></td></tr></table> - </td> - <td class="coverPerHi">92.1 %</td> - <td class="coverNumHi">35 / 38 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="patched.h.gcov.html">patched.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=67 height=10 alt="66.7%"><img src="../../../../../snow.png" width=33 height=10 alt="66.7%"></td></tr></table> - </td> - <td class="coverPerHi">66.7 %</td> - <td class="coverNumHi">38 / 57 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="patched.tcc.gcov.html">patched.tcc</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=59 height=10 alt="59.1%"><img src="../../../../../snow.png" width=41 height=10 alt="59.1%"></td></tr></table> - </td> - <td class="coverPerHi">59.1 %</td> - <td class="coverNumHi">13 / 22 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="simple.h.gcov.html">simple.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">14 / 14 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="simple.tcc.gcov.html">simple.tcc</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=82 height=10 alt="82.4%"><img src="../../../../../snow.png" width=18 height=10 alt="82.4%"></td></tr></table> - </td> - <td class="coverPerHi">82.4 %</td> - <td class="coverNumHi">14 / 17 lines</td> - </tr> - - </table> - </center> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html deleted file mode 100644 index 19678ae..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html +++ /dev/null @@ -1,265 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - intdiskindex.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">38</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">92.1 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">35</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_INT_DISK_INDEX_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_INT_DISK_INDEX_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Fast on-disk index for tag data -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify -<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by -<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or -<span class="lineNum"> 14 </span> : * (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -<span class="lineNum"> 19 </span> : * GNU General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License -<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <tagcoll/coll/base.h> -<span class="lineNum"> 27 </span> : #include <tagcoll/diskindex/int.h> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 31 </span> : class PatchList; -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : namespace coll { -<span class="lineNum"> 34 </span> : -<span class="lineNum"> 35 </span> : class IntDiskIndex; -<span class="lineNum"> 36 </span> : -<span class="lineNum"> 37 </span> : template<> -<span class="lineNum"> 38 </span> : struct coll_traits< IntDiskIndex > -<span class="lineNum"> 39 </span> : { -<span class="lineNum"> 40 </span> : typedef int item_type; -<span class="lineNum"> 41 </span> : typedef int tag_type; -<span class="lineNum"> 42 </span> : typedef std::set<int> tagset_type; -<span class="lineNum"> 43 </span> : typedef std::set<int> itemset_type; -<span class="lineNum"> 44 </span> : }; -<span class="lineNum"> 45 </span> : -<span class="lineNum"> 46 </span> : /** -<span class="lineNum"> 47 </span> : * Full TaggedCollection implementation on top of a persistent on-disk TDB -<span class="lineNum"> 48 </span> : * database. -<span class="lineNum"> 49 </span> : * -<span class="lineNum"> 50 </span> : * It allows to efficiently query a collection without having to store it all -<span class="lineNum"> 51 </span> : * into memory. -<span class="lineNum"> 52 </span> : * -<span class="lineNum"> 53 </span> : * If used for heavy modifications, the performance is slower compared to other -<span class="lineNum"> 54 </span> : * in-memory collections. If database writes are mainly used for populating -<span class="lineNum"> 55 </span> : * the index, then TDBIndexer should be used to create the index and -<span class="lineNum"> 56 </span> : * TDBDiskIndex to access it afterwards. -<span class="lineNum"> 57 </span> : */ -<span class="lineNum"> 58 </span> : class IntDiskIndex : public coll::ReadonlyCollection< IntDiskIndex > -<span class="lineNum"> 59 </span> : -<span class="lineNum"> 60 </span> : { -<span class="lineNum"> 61 </span> : protected: -<span class="lineNum"> 62 </span> : diskindex::Int pkgidx; -<span class="lineNum"> 63 </span> : diskindex::Int tagidx; -<span class="lineNum"> 64 </span> : -<span class="lineNum"> 65 </span> : public: -<span class="lineNum"> 66 </span> : class const_iterator -<span class="lineNum"> 67 </span> : { -<span class="lineNum"> 68 </span> : const IntDiskIndex& index; -<span class="lineNum"> 69 </span> : int idx; -<span class="lineNum"> 70 </span> : mutable std::pair< int, std::set<int> >* cached; -<span class="lineNum"> 71 </span> : -<span class="lineNum"> 72 </span> : public: -<span class="lineNum"> 73 </span> : // Builds an iterator -<span class="lineNum"> 74 </span><span class="lineCov"> 8 : const_iterator(const IntDiskIndex& index, int idx)</span> -<span class="lineNum"> 75 </span><span class="lineCov"> 8 : : index(index), idx(idx), cached(0) {}</span> -<span class="lineNum"> 76 </span> : // Builds the end iterator -<span class="lineNum"> 77 </span><span class="lineCov"> 274893 : const_iterator(const IntDiskIndex& index)</span> -<span class="lineNum"> 78 </span><span class="lineCov"> 274893 : : index(index), idx(index.pkgidx.size()), cached(0) {}</span> -<span class="lineNum"> 79 </span><span class="lineCov"> 528661 : ~const_iterator() { if (cached) delete cached; }</span> -<span class="lineNum"> 80 </span> : -<span class="lineNum"> 81 </span><span class="lineCov"> 105725 : std::pair< int, std::set<int> > operator*() const</span> -<span class="lineNum"> 82 </span> : { -<span class="lineNum"> 83 </span><span class="lineCov"> 105725 : return std::make_pair(idx, index.getTagsOfItem(idx));</span> -<span class="lineNum"> 84 </span> : } -<span class="lineNum"> 85 </span><span class="lineCov"> 42290 : std::pair< int, std::set<int> >* operator->() const</span> -<span class="lineNum"> 86 </span> : { -<span class="lineNum"> 87 </span><span class="lineCov"> 42290 : if (!cached)</span> -<span class="lineNum"> 88 </span><span class="lineCov"> 21145 : cached = new std::pair< int, std::set<int> >(operator*());</span> -<span class="lineNum"> 89 </span><span class="lineCov"> 42290 : return cached;</span> -<span class="lineNum"> 90 </span> : } -<span class="lineNum"> 91 </span> : -<span class="lineNum"> 92 </span><span class="lineCov"> 105725 : const_iterator operator++()</span> -<span class="lineNum"> 93 </span> : { -<span class="lineNum"> 94 </span><span class="lineCov"> 105725 : ++idx;</span> -<span class="lineNum"> 95 </span><span class="lineCov"> 105725 : if (cached) { delete cached; cached = 0; }</span> -<span class="lineNum"> 96 </span><span class="lineCov"> 105725 : return *this;</span> -<span class="lineNum"> 97 </span> : } -<span class="lineNum"> 98 </span><span class="lineCov"> 169161 : bool operator==(const const_iterator& iter) const</span> -<span class="lineNum"> 99 </span> : { -<span class="lineNum"> 100 </span><span class="lineCov"> 169161 : return idx == iter.idx;</span> -<span class="lineNum"> 101 </span> : } -<span class="lineNum"> 102 </span><span class="lineCov"> 105732 : bool operator!=(const const_iterator& iter) const</span> -<span class="lineNum"> 103 </span> : { -<span class="lineNum"> 104 </span><span class="lineCov"> 105732 : return idx != iter.idx;</span> -<span class="lineNum"> 105 </span> : } -<span class="lineNum"> 106 </span> : }; -<span class="lineNum"> 107 </span><span class="lineCov"> 8 : const_iterator begin() const { return const_iterator(*this, 0); }</span> -<span class="lineNum"> 108 </span><span class="lineCov"> 274893 : const_iterator end() const { return const_iterator(*this); }</span> -<span class="lineNum"> 109 </span> : -<span class="lineNum"> 110 </span> : /** -<span class="lineNum"> 111 </span> : * Create a new IntDiskIndex -<span class="lineNum"> 112 </span> : * -<span class="lineNum"> 113 </span> : * @param filename -<span class="lineNum"> 114 </span> : * The file name of the package index -<span class="lineNum"> 115 </span> : * @param tagidx -<span class="lineNum"> 116 </span> : * The file name of the tag index -<span class="lineNum"> 117 </span> : * @param fromitem, fromtag, toitem, totag -<span class="lineNum"> 118 </span> : * The Converter-s used to convert int and int to and from strings. -<span class="lineNum"> 119 </span> : * If 0 is passed, this TDBDiskIndex will only be able to work with -<span class="lineNum"> 120 </span> : * string items and string tags. -<span class="lineNum"> 121 </span> : * @param write -<span class="lineNum"> 122 </span> : * Set to false if the index should be opened in read-only mode. If -<span class="lineNum"> 123 </span> : * opened in read-only mode, all non-const methods of this class will -<span class="lineNum"> 124 </span> : * throw an exception if invoked. -<span class="lineNum"> 125 </span> : * It defaults to true. -<span class="lineNum"> 126 </span> : */ -<span class="lineNum"> 127 </span><span class="lineCov"> 10 : IntDiskIndex() {}</span> -<span class="lineNum"> 128 </span> : IntDiskIndex( -<span class="lineNum"> 129 </span> : const diskindex::MasterMMap& master, -<span class="lineNum"> 130 </span> : int pkgindex, int tagindex) -<span class="lineNum"> 131 </span> : : pkgidx(master, pkgindex), tagidx(master, tagindex) {} -<span class="lineNum"> 132 </span> : -<span class="lineNum"> 133 </span><span class="lineCov"> 9 : void init(const diskindex::MasterMMap& master, int pkgindex, int tagindex)</span> -<span class="lineNum"> 134 </span> : { -<span class="lineNum"> 135 </span><span class="lineCov"> 9 : pkgidx.init(master, pkgindex);</span> -<span class="lineNum"> 136 </span><span class="lineCov"> 9 : tagidx.init(master, tagindex);</span> -<span class="lineNum"> 137 </span><span class="lineCov"> 9 : }</span> -<span class="lineNum"> 138 </span> : -<span class="lineNum"> 139 </span> : std::set<int> getItemsHavingTag(const int& tag) const; -<span class="lineNum"> 140 </span> : std::set<int> getItemsHavingTags(const std::set<int>& tags) const; -<span class="lineNum"> 141 </span> : std::set<int> getTagsOfItem(const int& item) const; -<span class="lineNum"> 142 </span> : std::set<int> getTagsOfItems(const std::set<int>& items) const; -<span class="lineNum"> 143 </span> : -<span class="lineNum"> 144 </span> : bool hasTag(const int& tag) const -<span class="lineNum"> 145 </span> : { -<span class="lineNum"> 146 </span> : return tagidx.size(tag) > 0; -<span class="lineNum"> 147 </span> : } -<span class="lineNum"> 148 </span> : -<span class="lineNum"> 149 </span> : std::set<int> getTaggedItems() const; -<span class="lineNum"> 150 </span> : -<span class="lineNum"> 151 </span> : std::set<int> getAllTags() const; -<span class="lineNum"> 152 </span> : std::vector<int> getAllTagsAsVector() const; -<span class="lineNum"> 153 </span> : -<span class="lineNum"> 154 </span> : unsigned int itemCount() const { return pkgidx.size(); } -<span class="lineNum"> 155 </span> : unsigned int tagCount() const { return tagidx.size(); } -<span class="lineNum"> 156 </span> : -<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : unsigned int getCardinality(const int& tag) const</span> -<span class="lineNum"> 158 </span> : { -<span class="lineNum"> 159 </span><span class="lineNoCov"> 0 : return tagidx.size(tag);</span> -<span class="lineNum"> 160 </span> : } -<span class="lineNum"> 161 </span> : -<span class="lineNum"> 162 </span> : std::set<int> getCompanionTags(const std::set<int>& tags) const; -<span class="lineNum"> 163 </span> : -<span class="lineNum"> 164 </span> : //void output(Consumer<int, int>& consumer) const; -<span class="lineNum"> 165 </span> : }; -<span class="lineNum"> 166 </span> : -<span class="lineNum"> 167 </span> : class IntDiskIndexer -<span class="lineNum"> 168 </span><span class="lineCov"> 2 : {</span> -<span class="lineNum"> 169 </span> : protected: -<span class="lineNum"> 170 </span> : diskindex::IntIndexer pkgidx; -<span class="lineNum"> 171 </span> : diskindex::IntIndexer tagidx; -<span class="lineNum"> 172 </span> : -<span class="lineNum"> 173 </span> : public: -<span class="lineNum"> 174 </span><span class="lineCov"> 1 : const diskindex::MMapIndexer& pkgIndexer() const { return pkgidx; }</span> -<span class="lineNum"> 175 </span><span class="lineCov"> 1 : const diskindex::MMapIndexer& tagIndexer() const { return tagidx; }</span> -<span class="lineNum"> 176 </span> : -<span class="lineNum"> 177 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 178 </span><span class="lineCov"> 21133 : void insert(const ITEMS& items, const TAGS& tags)</span> -<span class="lineNum"> 179 </span> : { -<span class="lineNum"> 180 </span><span class="lineCov"> 21133 : if (tags.empty())</span> -<span class="lineNum"> 181 </span><span class="lineNoCov"> 0 : return;</span> -<span class="lineNum"> 182 </span><span class="lineCov"> 42266 : for (typename ITEMS::const_iterator it = items.begin();</span> -<span class="lineNum"> 183 </span> : it != items.end(); ++it) -<span class="lineNum"> 184 </span><span class="lineCov"> 126731 : for (typename TAGS::const_iterator ta = tags.begin();</span> -<span class="lineNum"> 185 </span> : ta != tags.end(); ++ta) -<span class="lineNum"> 186 </span> : { -<span class="lineNum"> 187 </span><span class="lineCov"> 105598 : pkgidx.map(*it, *ta);</span> -<span class="lineNum"> 188 </span><span class="lineCov"> 105598 : tagidx.map(*ta, *it);</span> -<span class="lineNum"> 189 </span> : } -<span class="lineNum"> 190 </span> : } -<span class="lineNum"> 191 </span> : }; -<span class="lineNum"> 192 </span> : -<span class="lineNum"> 193 </span> : -<span class="lineNum"> 194 </span> : } -<span class="lineNum"> 195 </span> : } -<span class="lineNum"> 196 </span> : -<span class="lineNum"> 197 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 198 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html deleted file mode 100644 index 78a82c0..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html +++ /dev/null @@ -1,307 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - patched.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">57</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">66.7 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">38</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_PATCHED_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_PATCHED_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Wrap a Collection, preserving modifications as patches -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify -<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by -<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or -<span class="lineNum"> 14 </span> : * (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -<span class="lineNum"> 19 </span> : * GNU General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License -<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <tagcoll/coll/base.h> -<span class="lineNum"> 27 </span> : #include <tagcoll/patch.h> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : template<typename T1, typename T2> class PatchList; -<span class="lineNum"> 31 </span> : -<span class="lineNum"> 32 </span> : namespace coll { -<span class="lineNum"> 33 </span> : template<typename ROCOLL> -<span class="lineNum"> 34 </span> : class Patched; -<span class="lineNum"> 35 </span> : -<span class="lineNum"> 36 </span> : template<typename ROCOLL> -<span class="lineNum"> 37 </span> : struct coll_traits< Patched<ROCOLL> > -<span class="lineNum"> 38 </span> : { -<span class="lineNum"> 39 </span> : typedef typename coll_traits<ROCOLL>::item_type item_type; -<span class="lineNum"> 40 </span> : typedef typename coll_traits<ROCOLL>::tag_type tag_type; -<span class="lineNum"> 41 </span> : typedef typename coll_traits<ROCOLL>::tagset_type tagset_type; -<span class="lineNum"> 42 </span> : typedef typename coll_traits<ROCOLL>::itemset_type itemset_type; -<span class="lineNum"> 43 </span> : }; -<span class="lineNum"> 44 </span> : -<span class="lineNum"> 45 </span> : /** -<span class="lineNum"> 46 </span> : * Wraps a collection by intercepting all changes to it and preserving them as -<span class="lineNum"> 47 </span> : * a PatchList. -<span class="lineNum"> 48 </span> : */ -<span class="lineNum"> 49 </span> : template<typename ROCOLL> -<span class="lineNum"> 50 </span> : class Patched : public coll::Collection< Patched<ROCOLL> > -<span class="lineNum"> 51 </span><span class="lineCov"> 10 : {</span> -<span class="lineNum"> 52 </span> : public: -<span class="lineNum"> 53 </span> : typedef tagcoll::Patch< -<span class="lineNum"> 54 </span> : typename coll_traits<ROCOLL>::item_type, -<span class="lineNum"> 55 </span> : typename coll_traits<ROCOLL>::tag_type> Patch; -<span class="lineNum"> 56 </span> : typedef tagcoll::PatchList< -<span class="lineNum"> 57 </span> : typename coll_traits<ROCOLL>::item_type, -<span class="lineNum"> 58 </span> : typename coll_traits<ROCOLL>::tag_type> Patches; -<span class="lineNum"> 59 </span> : typedef tagcoll::Patch< -<span class="lineNum"> 60 </span> : typename coll_traits<ROCOLL>::tag_type, -<span class="lineNum"> 61 </span> : typename coll_traits<ROCOLL>::item_type> RPatch; -<span class="lineNum"> 62 </span> : typedef tagcoll::PatchList< -<span class="lineNum"> 63 </span> : typename coll_traits<ROCOLL>::tag_type, -<span class="lineNum"> 64 </span> : typename coll_traits<ROCOLL>::item_type> RPatches; -<span class="lineNum"> 65 </span> : -<span class="lineNum"> 66 </span> : protected: -<span class="lineNum"> 67 </span> : typedef typename coll_traits<ROCOLL>::item_type Item; -<span class="lineNum"> 68 </span> : typedef typename coll_traits<ROCOLL>::tag_type Tag; -<span class="lineNum"> 69 </span> : typedef typename coll_traits<ROCOLL>::itemset_type ItemSet; -<span class="lineNum"> 70 </span> : typedef typename coll_traits<ROCOLL>::tagset_type TagSet; -<span class="lineNum"> 71 </span> : -<span class="lineNum"> 72 </span> : const ROCOLL& coll; -<span class="lineNum"> 73 </span> : Patches m_changes; -<span class="lineNum"> 74 </span> : RPatches m_rchanges; -<span class="lineNum"> 75 </span> : -<span class="lineNum"> 76 </span> : #if 0 -<span class="lineNum"> 77 </span> : virtual void consumeItem(const ITEM& item, const std::set<TAG>& tags); -<span class="lineNum"> 78 </span> : -<span class="lineNum"> 79 </span> : virtual std::set<ITEM> getItemsHavingTag(const TAG& tag) const; -<span class="lineNum"> 80 </span> : virtual std::set<TAG> getTagsOfItem(const ITEM& item) const; -<span class="lineNum"> 81 </span> : #endif -<span class="lineNum"> 82 </span> : -<span class="lineNum"> 83 </span> : public: -<span class="lineNum"> 84 </span> : typedef std::pair<Item, TagSet> value_type; -<span class="lineNum"> 85 </span> : -<span class="lineNum"> 86 </span> : class const_iterator -<span class="lineNum"> 87 </span> : { -<span class="lineNum"> 88 </span> : const Patched<ROCOLL>& coll; -<span class="lineNum"> 89 </span> : typename ROCOLL::const_iterator ci; -<span class="lineNum"> 90 </span> : typename Patches::const_iterator pi; -<span class="lineNum"> 91 </span> : mutable typename Patched<ROCOLL>::value_type* cached_val; -<span class="lineNum"> 92 </span> : -<span class="lineNum"> 93 </span> : protected: -<span class="lineNum"> 94 </span> : const_iterator(const Patched<ROCOLL>& coll, -<span class="lineNum"> 95 </span> : const typename ROCOLL::const_iterator& ci, -<span class="lineNum"> 96 </span><span class="lineCov"> 84592 : const typename Patches::const_iterator& pi)</span> -<span class="lineNum"> 97 </span><span class="lineCov"> 84592 : : coll(coll), ci(ci), pi(pi), cached_val(0) {}</span> -<span class="lineNum"> 98 </span> : -<span class="lineNum"> 99 </span> : public: -<span class="lineNum"> 100 </span><span class="lineCov"> 148035 : ~const_iterator()</span> -<span class="lineNum"> 101 </span> : { -<span class="lineNum"> 102 </span><span class="lineCov"> 148035 : if (cached_val)</span> -<span class="lineNum"> 103 </span><span class="lineNoCov"> 0 : delete cached_val;</span> -<span class="lineNum"> 104 </span><span class="lineCov"> 148035 : }</span> -<span class="lineNum"> 105 </span><span class="lineCov"> 84580 : const typename Patched<ROCOLL>::value_type operator*() const</span> -<span class="lineNum"> 106 </span> : { -<span class="lineNum"> 107 </span><span class="lineCov"> 84580 : if (cached_val)</span> -<span class="lineNum"> 108 </span><span class="lineNoCov"> 0 : return *cached_val;</span> -<span class="lineNum"> 109 </span> : -<span class="lineNum"> 110 </span><span class="lineCov"> 84580 : if (ci == coll.coll.end() && pi == coll.m_changes.end())</span> -<span class="lineNum"> 111 </span><span class="lineNoCov"> 0 : return *(typename Patched<ROCOLL>::value_type*)0;</span> -<span class="lineNum"> 112 </span><span class="lineCov"> 84580 : else if (pi == coll.m_changes.end())</span> -<span class="lineNum"> 113 </span><span class="lineCov"> 84580 : return *ci;</span> -<span class="lineNum"> 114 </span><span class="lineNoCov"> 0 : else if (ci == coll.coll.end())</span> -<span class="lineNum"> 115 </span><span class="lineNoCov"> 0 : return make_pair(pi->first, pi->second.added);</span> -<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : else if (ci->first < pi->first)</span> -<span class="lineNum"> 117 </span><span class="lineNoCov"> 0 : return *ci;</span> -<span class="lineNum"> 118 </span><span class="lineNoCov"> 0 : else if (ci->first > pi->first)</span> -<span class="lineNum"> 119 </span><span class="lineNoCov"> 0 : return make_pair(pi->first, pi->second.added);</span> -<span class="lineNum"> 120 </span> : else -<span class="lineNum"> 121 </span><span class="lineNoCov"> 0 : return make_pair(ci->first, pi->second.apply(ci->second));</span> -<span class="lineNum"> 122 </span> : } -<span class="lineNum"> 123 </span><span class="lineCov"> 211450 : const typename Patched<ROCOLL>::value_type* operator->() const</span> -<span class="lineNum"> 124 </span> : { -<span class="lineNum"> 125 </span><span class="lineCov"> 211450 : if (cached_val)</span> -<span class="lineNum"> 126 </span><span class="lineCov"> 126870 : return cached_val;</span> -<span class="lineNum"> 127 </span><span class="lineCov"> 84580 : return cached_val = new typename Patched<ROCOLL>::value_type(*(*this));</span> -<span class="lineNum"> 128 </span> : } -<span class="lineNum"> 129 </span><span class="lineCov"> 84580 : const_iterator& operator++()</span> -<span class="lineNum"> 130 </span> : { -<span class="lineNum"> 131 </span><span class="lineCov"> 84580 : if (ci == coll.coll.end() && pi == coll.m_changes.end())</span> -<span class="lineNum"> 132 </span> : ; -<span class="lineNum"> 133 </span><span class="lineCov"> 84580 : else if (pi == coll.m_changes.end())</span> -<span class="lineNum"> 134 </span><span class="lineCov"> 84580 : ++ci;</span> -<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : else if (ci == coll.coll.end())</span> -<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : ++pi;</span> -<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : else if (ci->first < pi->first)</span> -<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : ++ci;</span> -<span class="lineNum"> 139 </span><span class="lineNoCov"> 0 : else if (ci->first > pi->first)</span> -<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : ++pi;</span> -<span class="lineNum"> 141 </span> : else -<span class="lineNum"> 142 </span> : { -<span class="lineNum"> 143 </span><span class="lineNoCov"> 0 : ++ci;</span> -<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : ++pi;</span> -<span class="lineNum"> 145 </span> : } -<span class="lineNum"> 146 </span><span class="lineCov"> 84580 : if (cached_val)</span> -<span class="lineNum"> 147 </span> : { -<span class="lineNum"> 148 </span><span class="lineCov"> 84580 : delete cached_val;</span> -<span class="lineNum"> 149 </span><span class="lineCov"> 84580 : cached_val = 0;</span> -<span class="lineNum"> 150 </span> : } -<span class="lineNum"> 151 </span><span class="lineCov"> 84580 : return *this;</span> -<span class="lineNum"> 152 </span> : } -<span class="lineNum"> 153 </span><span class="lineCov"> 1 : bool operator==(const const_iterator& iter) const</span> -<span class="lineNum"> 154 </span> : { -<span class="lineNum"> 155 </span><span class="lineCov"> 1 : return ci == iter.ci && pi == iter.pi;</span> -<span class="lineNum"> 156 </span> : } -<span class="lineNum"> 157 </span><span class="lineCov"> 84585 : bool operator!=(const const_iterator& iter) const</span> -<span class="lineNum"> 158 </span> : { -<span class="lineNum"> 159 </span><span class="lineCov"> 84585 : return ci != iter.ci || pi != iter.pi;</span> -<span class="lineNum"> 160 </span> : } -<span class="lineNum"> 161 </span> : -<span class="lineNum"> 162 </span> : friend class Patched<ROCOLL>; -<span class="lineNum"> 163 </span> : }; -<span class="lineNum"> 164 </span><span class="lineCov"> 6 : const_iterator begin() const { return const_iterator(*this, coll.begin(), m_changes.begin()); }</span> -<span class="lineNum"> 165 </span><span class="lineCov"> 84586 : const_iterator end() const { return const_iterator(*this, coll.end(), m_changes.end()); }</span> -<span class="lineNum"> 166 </span> : -<span class="lineNum"> 167 </span><span class="lineCov"> 10 : Patched(const ROCOLL& coll) : coll(coll) {}</span> -<span class="lineNum"> 168 </span> : -<span class="lineNum"> 169 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 170 </span> : void insert(const ITEMS& items, const TAGS& tags); -<span class="lineNum"> 171 </span> : -<span class="lineNum"> 172 </span> : template<typename ITEMS> -<span class="lineNum"> 173 </span> : void insert(const ITEMS& items, const wibble::Empty<Tag>& tags) -<span class="lineNum"> 174 </span> : { -<span class="lineNum"> 175 </span> : // Nothing to do in this case -<span class="lineNum"> 176 </span> : } -<span class="lineNum"> 177 </span> : -<span class="lineNum"> 178 </span> : /** -<span class="lineNum"> 179 </span> : * Removes all items from the collection -<span class="lineNum"> 180 </span> : */ -<span class="lineNum"> 181 </span> : void clear(); -<span class="lineNum"> 182 </span> : -<span class="lineNum"> 183 </span> : /** -<span class="lineNum"> 184 </span> : * Get the changes that have been applied to this collection -<span class="lineNum"> 185 </span> : */ -<span class="lineNum"> 186 </span><span class="lineCov"> 4 : const Patches& changes() const { return m_changes; }</span> -<span class="lineNum"> 187 </span> : -<span class="lineNum"> 188 </span> : /** -<span class="lineNum"> 189 </span> : * Throw away all changes previously applied to this collection -<span class="lineNum"> 190 </span> : */ -<span class="lineNum"> 191 </span> : void resetChanges() { m_changes.clear(); m_rchanges.clear(); } -<span class="lineNum"> 192 </span> : -<span class="lineNum"> 193 </span> : /** -<span class="lineNum"> 194 </span> : * Set the changes list to a specific patch list -<span class="lineNum"> 195 </span> : */ -<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : void setChanges(const Patches& changes);</span> -<span class="lineNum"> 197 </span> : -<span class="lineNum"> 198 </span> : /** -<span class="lineNum"> 199 </span> : * Add a specific patch list to the changes list -<span class="lineNum"> 200 </span> : */ -<span class="lineNum"> 201 </span><span class="lineCov"> 2 : void addChanges(const Patches& changes);</span> -<span class="lineNum"> 202 </span> : -<span class="lineNum"> 203 </span> : bool hasTag(const Tag& tag) const; -<span class="lineNum"> 204 </span> : -<span class="lineNum"> 205 </span><span class="lineCov"> 5 : TagSet getTagsOfItem(const Item& item) const</span> -<span class="lineNum"> 206 </span> : { -<span class="lineNum"> 207 </span><span class="lineCov"> 5 : return m_changes.patch(item, coll.getTagsOfItem(item));</span> -<span class="lineNum"> 208 </span> : } -<span class="lineNum"> 209 </span><span class="lineCov"> 9 : ItemSet getItemsHavingTag(const typename coll_traits<ROCOLL>::tag_type& tag) const</span> -<span class="lineNum"> 210 </span> : { -<span class="lineNum"> 211 </span><span class="lineCov"> 9 : return m_rchanges.patch(tag, coll.getItemsHavingTag(tag));</span> -<span class="lineNum"> 212 </span> : } -<span class="lineNum"> 213 </span> : -<span class="lineNum"> 214 </span> : ItemSet getTaggedItems() const; -<span class="lineNum"> 215 </span><span class="lineCov"> 1 : TagSet getAllTags() const;</span> -<span class="lineNum"> 216 </span> : -<span class="lineNum"> 217 </span> : unsigned int tagCount() const { return getAllTags().size(); } -<span class="lineNum"> 218 </span> : -<span class="lineNum"> 219 </span> : unsigned int getCardinality(const Tag& tag) const; -<span class="lineNum"> 220 </span> : -<span class="lineNum"> 221 </span><span class="lineCov"> 2 : void applyChange(const Patches& change) { this->addChanges(change); }</span> -<span class="lineNum"> 222 </span> : -<span class="lineNum"> 223 </span> : #if 0 -<span class="lineNum"> 224 </span> : template<typename OUT> -<span class="lineNum"> 225 </span> : void output(OUT out) const -<span class="lineNum"> 226 </span> : { -<span class="lineNum"> 227 </span> : for (const_iterator i = begin(); i != end(); ++i) -<span class="lineNum"> 228 </span> : { -<span class="lineNum"> 229 </span> : *out = *i; -<span class="lineNum"> 230 </span> : ++out; -<span class="lineNum"> 231 </span> : } -<span class="lineNum"> 232 </span> : } -<span class="lineNum"> 233 </span> : #endif -<span class="lineNum"> 234 </span> : }; -<span class="lineNum"> 235 </span> : -<span class="lineNum"> 236 </span> : } -<span class="lineNum"> 237 </span> : } -<span class="lineNum"> 238 </span> : -<span class="lineNum"> 239 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 240 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html deleted file mode 100644 index d6a3fec..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html +++ /dev/null @@ -1,274 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - patched.tcc</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">22</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">59.1 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">13</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : /* -<span class="lineNum"> 2 </span> : * Wrap a Collection, preserving modifications as patches -<span class="lineNum"> 3 </span> : * -<span class="lineNum"> 4 </span> : * Copyright (C) 2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 5 </span> : * -<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify -<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by -<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or -<span class="lineNum"> 9 </span> : * (at your option) any later version. -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful, -<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -<span class="lineNum"> 14 </span> : * GNU General Public License for more details. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License -<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software -<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 19 </span> : */ -<span class="lineNum"> 20 </span> : -<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_COLL_PATCHED_TCC -<span class="lineNum"> 22 </span> : #define TAGCOLL_COLL_PATCHED_TCC -<span class="lineNum"> 23 </span> : -<span class="lineNum"> 24 </span> : #include <tagcoll/coll/patched.h> -<span class="lineNum"> 25 </span> : #include <tagcoll/utils/set.h> -<span class="lineNum"> 26 </span> : -<span class="lineNum"> 27 </span> : #include <wibble/operators.h> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : using namespace std; -<span class="lineNum"> 30 </span> : using namespace wibble::operators; -<span class="lineNum"> 31 </span> : -<span class="lineNum"> 32 </span> : namespace tagcoll { -<span class="lineNum"> 33 </span> : namespace coll { -<span class="lineNum"> 34 </span> : -<span class="lineNum"> 35 </span> : template<typename ROCOLL> template<typename ITEMS, typename TAGS> -<span class="lineNum"> 36 </span> : void Patched<ROCOLL>::insert(const ITEMS& items, const TAGS& tags) -<span class="lineNum"> 37 </span> : { -<span class="lineNum"> 38 </span> : Patches changes; -<span class="lineNum"> 39 </span> : for (typename ITEMS::const_iterator i = items.begin(); -<span class="lineNum"> 40 </span> : i != items.end(); ++i) -<span class="lineNum"> 41 </span> : changes.addPatch(Patch(*i, tags, TagSet())); -<span class="lineNum"> 42 </span> : addChanges(changes); -<span class="lineNum"> 43 </span> : } -<span class="lineNum"> 44 </span> : -<span class="lineNum"> 45 </span> : -<span class="lineNum"> 46 </span> : template<typename ROCOLL> -<span class="lineNum"> 47 </span> : void Patched<ROCOLL>::clear() -<span class="lineNum"> 48 </span> : { -<span class="lineNum"> 49 </span> : // Remove all patches -<span class="lineNum"> 50 </span> : m_changes.clear(); -<span class="lineNum"> 51 </span> : m_rchanges.clear(); -<span class="lineNum"> 52 </span> : -<span class="lineNum"> 53 </span> : // Add all tagsets of the underlying collection as removed tags in the patch -<span class="lineNum"> 54 </span> : for (typename ROCOLL::const_iterator i = coll.begin(); -<span class="lineNum"> 55 </span> : i != coll.end(); ++i) -<span class="lineNum"> 56 </span> : { -<span class="lineNum"> 57 </span> : m_changes.addPatch(Patch(i->first, std::set<Tag>(), i->second)); -<span class="lineNum"> 58 </span> : -<span class="lineNum"> 59 </span> : for (typename TagSet::const_iterator j = i->second.begin(); -<span class="lineNum"> 60 </span> : j != i->second.end(); ++j) -<span class="lineNum"> 61 </span> : m_rchanges.addPatch(Patch(*j, wibble::Empty<Tag>(), wibble::singleton(i->first))); -<span class="lineNum"> 62 </span> : } -<span class="lineNum"> 63 </span> : } -<span class="lineNum"> 64 </span> : -<span class="lineNum"> 65 </span> : template<typename ROCOLL> -<span class="lineNum"> 66 </span> : void Patched<ROCOLL>::setChanges(const Patches& changes) -<span class="lineNum"> 67 </span> : { -<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : this->m_changes.clear();</span> -<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : this->m_rchanges.clear();</span> -<span class="lineNum"> 70 </span> : -<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : addChanges(changes);</span> -<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : }</span> -<span class="lineNum"> 73 </span> : -<span class="lineNum"> 74 </span> : template<typename ROCOLL> -<span class="lineNum"> 75 </span> : void Patched<ROCOLL>::addChanges(const Patches& changes) -<span class="lineNum"> 76 </span> : { -<span class="lineNum"> 77 </span> : // Simplify the patch against the contents of `coll' before adding it. -<span class="lineNum"> 78 </span><span class="lineCov"> 4 : for (typename Patches::const_iterator i = changes.begin(); i != changes.end(); ++i)</span> -<span class="lineNum"> 79 </span> : // Consider only valid items -<span class="lineNum"> 80 </span><span class="lineCov"> 2 : if (i->first != Item())</span> -<span class="lineNum"> 81 </span> : { -<span class="lineNum"> 82 </span> : // Merge with existing patches -<span class="lineNum"> 83 </span><span class="lineCov"> 2 : this->m_changes.addPatch(i->second);</span> -<span class="lineNum"> 84 </span> : // Simplify the result -<span class="lineNum"> 85 </span><span class="lineCov"> 2 : this->m_changes.removeRedundant(i->first, coll.getTagsOfItem(i->first));</span> -<span class="lineNum"> 86 </span> : } -<span class="lineNum"> 87 </span> : -<span class="lineNum"> 88 </span><span class="lineCov"> 2 : RPatches rchanges;</span> -<span class="lineNum"> 89 </span><span class="lineCov"> 2 : rchanges.addPatchInverted(changes);</span> -<span class="lineNum"> 90 </span><span class="lineCov"> 4 : for (typename RPatches::const_iterator i = rchanges.begin(); i != rchanges.end(); ++i)</span> -<span class="lineNum"> 91 </span> : // Consider only valid tags -<span class="lineNum"> 92 </span><span class="lineCov"> 2 : if (i->first != Tag())</span> -<span class="lineNum"> 93 </span> : { -<span class="lineNum"> 94 </span> : // Merge with existing patches -<span class="lineNum"> 95 </span><span class="lineCov"> 2 : this->m_rchanges.addPatch(i->second);</span> -<span class="lineNum"> 96 </span> : // Simplify the result -<span class="lineNum"> 97 </span><span class="lineCov"> 4 : this->m_rchanges.removeRedundant(i->first, coll.getItemsHavingTag(i->first));</span> -<span class="lineNum"> 98 </span> : } -<span class="lineNum"> 99 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 100 </span> : -<span class="lineNum"> 101 </span> : template<typename ROCOLL> -<span class="lineNum"> 102 </span> : bool Patched<ROCOLL>::hasTag(const Tag& tag) const -<span class="lineNum"> 103 </span> : { -<span class="lineNum"> 104 </span> : typename RPatches::const_iterator i = m_rchanges.find(tag); -<span class="lineNum"> 105 </span> : if (i == m_rchanges.end()) -<span class="lineNum"> 106 </span> : return coll.hasTag(tag); -<span class="lineNum"> 107 </span> : if (! i->second.added.empty()) -<span class="lineNum"> 108 </span> : return true; -<span class="lineNum"> 109 </span> : return !this->getItemsHavingTag(tag).empty(); -<span class="lineNum"> 110 </span> : } -<span class="lineNum"> 111 </span> : -<span class="lineNum"> 112 </span> : template<typename ROCOLL> -<span class="lineNum"> 113 </span> : typename coll_traits<ROCOLL>::itemset_type Patched<ROCOLL>::getTaggedItems() const -<span class="lineNum"> 114 </span> : { -<span class="lineNum"> 115 </span> : ItemSet res(coll.getTaggedItems()); -<span class="lineNum"> 116 </span> : for (typename Patches::const_iterator i = m_changes.begin(); -<span class="lineNum"> 117 </span> : i != m_changes.end(); ++i) -<span class="lineNum"> 118 </span> : if (!i->second.added.empty()) -<span class="lineNum"> 119 </span> : // Add packages for which tags are added -<span class="lineNum"> 120 </span> : res |= i->first; -<span class="lineNum"> 121 </span> : else if (getTagsOfItem(i->first).empty()) -<span class="lineNum"> 122 </span> : // Remove the packages to which the patch removes all tags -<span class="lineNum"> 123 </span> : res -= i->first; -<span class="lineNum"> 124 </span> : return res; -<span class="lineNum"> 125 </span> : } -<span class="lineNum"> 126 </span> : -<span class="lineNum"> 127 </span> : template<typename ROCOLL> -<span class="lineNum"> 128 </span> : typename coll_traits<ROCOLL>::tagset_type Patched<ROCOLL>::getAllTags() const -<span class="lineNum"> 129 </span> : { -<span class="lineNum"> 130 </span><span class="lineCov"> 1 : TagSet res(coll.getAllTags());</span> -<span class="lineNum"> 131 </span><span class="lineCov"> 1 : for (typename RPatches::const_iterator i = m_rchanges.begin();</span> -<span class="lineNum"> 132 </span> : i != m_rchanges.end(); ++i) -<span class="lineNum"> 133 </span><span class="lineNoCov"> 0 : if (!i->second.added.empty())</span> -<span class="lineNum"> 134 </span> : // Add tags for which packages are added -<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : res |= i->first;</span> -<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : else if (coll.getCardinality(i->first) - i->second.removed.size() <= 0)</span> -<span class="lineNum"> 137 </span> : // Remove the tags to which the patch removes all items -<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : res -= i->first;</span> -<span class="lineNum"> 139 </span><span class="lineNoCov"> 0 : return res;</span> -<span class="lineNum"> 140 </span> : } -<span class="lineNum"> 141 </span> : -<span class="lineNum"> 142 </span> : #if 0 -<span class="lineNum"> 143 </span> : template<typename ITEM, typename TAG, typename OUT> -<span class="lineNum"> 144 </span> : class UnpatchedOnly : public wibble::mixin::OutputIterator< UnpatchedOnly<ITEM, TAG, OUT> > -<span class="lineNum"> 145 </span> : { -<span class="lineNum"> 146 </span> : protected: -<span class="lineNum"> 147 </span> : OUT out; -<span class="lineNum"> 148 </span> : const PatchList<ITEM, TAG>& changes; -<span class="lineNum"> 149 </span> : -<span class="lineNum"> 150 </span> : public: -<span class="lineNum"> 151 </span> : UnpatchedOnly(const PatchList<ITEM, TAG>& changes, const OUT& out) : out(out), changes(changes) {} -<span class="lineNum"> 152 </span> : -<span class="lineNum"> 153 </span> : UnpatchedOnly<ITEM, TAG, OUT>& operator++() { return *this; } -<span class="lineNum"> 154 </span> : -<span class="lineNum"> 155 </span> : template<typename Items, typename Tags> -<span class="lineNum"> 156 </span> : UnpatchedOnly<ITEM, TAG, OUT>& operator=(const std::pair<Items, Tags>& data) -<span class="lineNum"> 157 </span> : { -<span class="lineNum"> 158 </span> : for (typename Items::const_iterator i = data.first.begin(); -<span class="lineNum"> 159 </span> : i != data.first.end(); ++i) -<span class="lineNum"> 160 </span> : if (changes.find(*i) == changes.end()) -<span class="lineNum"> 161 </span> : { -<span class="lineNum"> 162 </span> : *out = data; -<span class="lineNum"> 163 </span> : ++out; -<span class="lineNum"> 164 </span> : } -<span class="lineNum"> 165 </span> : return *this; -<span class="lineNum"> 166 </span> : } -<span class="lineNum"> 167 </span> : }; -<span class="lineNum"> 168 </span> : -<span class="lineNum"> 169 </span> : template<typename ITEM, typename TAG, typename OUT> -<span class="lineNum"> 170 </span> : UnpatchedOnly<ITEM, TAG, OUT> unpatchedOnly(const PatchList<ITEM, TAG>& changes, const OUT& out) -<span class="lineNum"> 171 </span> : { -<span class="lineNum"> 172 </span> : return UnpatchedOnly<ITEM, TAG, OUT>(changes, out); -<span class="lineNum"> 173 </span> : } -<span class="lineNum"> 174 </span> : -<span class="lineNum"> 175 </span> : template<class ITEM, class TAG> -<span class="lineNum"> 176 </span> : void Patched<ITEM, TAG>::output(Consumer<ITEM, TAG>& cons) const -<span class="lineNum"> 177 </span> : { -<span class="lineNum"> 178 </span> : // First, only pass the unpatched items -<span class="lineNum"> 179 </span> : coll.outputToIterator(unpatchedOnly(changes, consumer(cons))); -<span class="lineNum"> 180 </span> : -<span class="lineNum"> 181 </span> : // Then output the items in the patch -<span class="lineNum"> 182 </span> : for (typename PatchList<ITEM, TAG>::const_iterator i = changes.begin(); -<span class="lineNum"> 183 </span> : i != changes.end(); i++) -<span class="lineNum"> 184 </span> : cons.consume(i->first, -<span class="lineNum"> 185 </span> : changes.patch(i->first, coll.getTags(i->first))); -<span class="lineNum"> 186 </span> : } -<span class="lineNum"> 187 </span> : #endif -<span class="lineNum"> 188 </span> : -<span class="lineNum"> 189 </span> : template<typename ROCOLL> -<span class="lineNum"> 190 </span> : unsigned int Patched<ROCOLL>::getCardinality(const Tag& tag) const -<span class="lineNum"> 191 </span> : { -<span class="lineNum"> 192 </span> : typename RPatches::const_iterator i = m_rchanges.find(tag); -<span class="lineNum"> 193 </span> : if (i == m_rchanges.end()) -<span class="lineNum"> 194 </span> : return coll.getCardinality(tag); -<span class="lineNum"> 195 </span> : else -<span class="lineNum"> 196 </span> : return coll.getCardinality(tag) + i->second.added.size() - i->second.removed.size(); -<span class="lineNum"> 197 </span> : } -<span class="lineNum"> 198 </span> : -<span class="lineNum"> 199 </span> : } -<span class="lineNum"> 200 </span> : } -<span class="lineNum"> 201 </span> : -<span class="lineNum"> 202 </span> : #include <tagcoll/coll/base.tcc> -<span class="lineNum"> 203 </span> : #include <tagcoll/patch.tcc> -<span class="lineNum"> 204 </span> : -<span class="lineNum"> 205 </span> : #endif -<span class="lineNum"> 206 </span> : -<span class="lineNum"> 207 </span> : // vim:set ts=4 sw=4: -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html deleted file mode 100644 index 3ffdd0c..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html +++ /dev/null @@ -1,205 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - simple.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">14</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">14</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_SIMPLE_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_SIMPLE_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Simple tagged collection. -<span class="lineNum"> 6 </span> : * -<span class="lineNum"> 7 </span> : * Also used for merging tags of items appearing multiple times in a stream of -<span class="lineNum"> 8 </span> : * tagged items -<span class="lineNum"> 9 </span> : */ -<span class="lineNum"> 10 </span> : -<span class="lineNum"> 11 </span> : /* -<span class="lineNum"> 12 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 13 </span> : * -<span class="lineNum"> 14 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 15 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 16 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 17 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 18 </span> : * -<span class="lineNum"> 19 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 20 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 21 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 22 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 23 </span> : * -<span class="lineNum"> 24 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 25 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 26 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 27 </span> : */ -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : #include <tagcoll/coll/base.h> -<span class="lineNum"> 30 </span> : #include <set> -<span class="lineNum"> 31 </span> : #include <map> -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : namespace tagcoll { -<span class="lineNum"> 34 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 35 </span> : class PatchList; -<span class="lineNum"> 36 </span> : -<span class="lineNum"> 37 </span> : namespace coll { -<span class="lineNum"> 38 </span> : -<span class="lineNum"> 39 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 40 </span> : class Simple; -<span class="lineNum"> 41 </span> : -<span class="lineNum"> 42 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 43 </span> : struct coll_traits< Simple<ITEM, TAG> > -<span class="lineNum"> 44 </span> : { -<span class="lineNum"> 45 </span> : typedef ITEM item_type; -<span class="lineNum"> 46 </span> : typedef TAG tag_type; -<span class="lineNum"> 47 </span> : typedef std::set<ITEM> tagset_type; -<span class="lineNum"> 48 </span> : typedef std::set<TAG> itemset_type; -<span class="lineNum"> 49 </span> : }; -<span class="lineNum"> 50 </span> : -<span class="lineNum"> 51 </span> : -<span class="lineNum"> 52 </span> : /** -<span class="lineNum"> 53 </span> : * Simple Collection. -<span class="lineNum"> 54 </span> : * -<span class="lineNum"> 55 </span> : * It can be used to merge input values: if an item is added multiple times, -<span class="lineNum"> 56 </span> : * its various tagsets are merged in a single one. -<span class="lineNum"> 57 </span> : * -<span class="lineNum"> 58 </span> : * It is also a full-featured collection, although not very optimized. -<span class="lineNum"> 59 </span> : */ -<span class="lineNum"> 60 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 61 </span> : class Simple : public coll::Collection< Simple<ITEM, TAG> > -<span class="lineNum"> 62 </span><span class="lineCov"> 14 : {</span> -<span class="lineNum"> 63 </span> : protected: -<span class="lineNum"> 64 </span> : std::map< ITEM, std::set<TAG> > coll; -<span class="lineNum"> 65 </span> : -<span class="lineNum"> 66 </span> : #if 0 -<span class="lineNum"> 67 </span> : virtual void consumeItem(const ITEM& item, const std::set<TAG>& tags); -<span class="lineNum"> 68 </span> : -<span class="lineNum"> 69 </span> : virtual std::set<ITEM> getItemsHavingTags(const std::set<TAG>& tags) const; -<span class="lineNum"> 70 </span> : #endif -<span class="lineNum"> 71 </span> : -<span class="lineNum"> 72 </span> : public: -<span class="lineNum"> 73 </span> : typedef typename std::map< ITEM, std::set<TAG> >::const_iterator const_iterator; -<span class="lineNum"> 74 </span> : typedef typename std::map< ITEM, std::set<TAG> >::iterator iterator; -<span class="lineNum"> 75 </span> : typedef typename std::map< ITEM, std::set<TAG> >::value_type value_type; -<span class="lineNum"> 76 </span> : -<span class="lineNum"> 77 </span><span class="lineCov"> 5 : const_iterator begin() const { return coll.begin(); }</span> -<span class="lineNum"> 78 </span><span class="lineCov"> 42298 : const_iterator end() const { return coll.end(); }</span> -<span class="lineNum"> 79 </span><span class="lineCov"> 1 : iterator begin() { return coll.begin(); }</span> -<span class="lineNum"> 80 </span><span class="lineCov"> 21146 : iterator end() { return coll.end(); }</span> -<span class="lineNum"> 81 </span> : -<span class="lineNum"> 82 </span><span class="lineCov"> 2 : bool empty() const { return coll.empty(); }</span> -<span class="lineNum"> 83 </span> : -<span class="lineNum"> 84 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 85 </span><span class="lineCov"> 2 : void insert(const ITEMS& items, const TAGS& tags);</span> -<span class="lineNum"> 86 </span> : -<span class="lineNum"> 87 </span> : bool hasItem(const ITEM& item) const { return coll.find(item) != coll.end(); } -<span class="lineNum"> 88 </span> : -<span class="lineNum"> 89 </span><span class="lineCov"> 2 : std::set<TAG> getTagsOfItem(const ITEM& item) const;</span> -<span class="lineNum"> 90 </span> : std::set<ITEM> getItemsHavingTag(const TAG& tag) const; -<span class="lineNum"> 91 </span> : template<typename TAGS> -<span class="lineNum"> 92 </span> : std::set<ITEM> getItemsHavingTags(const TAGS& tag) const; -<span class="lineNum"> 93 </span> : -<span class="lineNum"> 94 </span> : template<typename TAGS, typename OUT> -<span class="lineNum"> 95 </span> : void outputHavingTags(const TAGS& tags, OUT out) const; -<span class="lineNum"> 96 </span> : -<span class="lineNum"> 97 </span> : #if 0 -<span class="lineNum"> 98 </span> : void output(Consumer<ITEM, TAG>& consumer) const; -<span class="lineNum"> 99 </span> : void outputHavingTags(const std::set<TAG>& ts, Consumer<ITEM, TAG>& consumer) const; -<span class="lineNum"> 100 </span> : -<span class="lineNum"> 101 </span> : /** -<span class="lineNum"> 102 </span> : * Send the merged data to a consumer, but reversed: the tag become items, -<span class="lineNum"> 103 </span> : * and they are tagged with the items that had them -<span class="lineNum"> 104 </span> : */ -<span class="lineNum"> 105 </span> : void outputReversed(Consumer<TAG, ITEM>& consumer) const; -<span class="lineNum"> 106 </span> : #endif -<span class="lineNum"> 107 </span> : -<span class="lineNum"> 108 </span> : void applyChange(const PatchList<ITEM, TAG>& change); -<span class="lineNum"> 109 </span> : -<span class="lineNum"> 110 </span> : std::set<ITEM> getTaggedItems() const; -<span class="lineNum"> 111 </span> : -<span class="lineNum"> 112 </span><span class="lineCov"> 3 : std::set<TAG> getAllTags() const;</span> -<span class="lineNum"> 113 </span> : -<span class="lineNum"> 114 </span> : std::set<TAG> getCompanionTags(const std::set<TAG>& ts) const; -<span class="lineNum"> 115 </span> : -<span class="lineNum"> 116 </span> : std::set<ITEM> getRelatedItems(const std::set<TAG>& ts, int maxdistance = 1) const; -<span class="lineNum"> 117 </span> : -<span class="lineNum"> 118 </span> : /** -<span class="lineNum"> 119 </span> : * Count the number of items -<span class="lineNum"> 120 </span> : */ -<span class="lineNum"> 121 </span><span class="lineCov"> 5 : unsigned int itemCount() const;</span> -<span class="lineNum"> 122 </span> : -<span class="lineNum"> 123 </span><span class="lineCov"> 3 : unsigned int tagCount() const { return getAllTags().size(); }</span> -<span class="lineNum"> 124 </span> : -<span class="lineNum"> 125 </span> : /** -<span class="lineNum"> 126 </span> : * Empty the collection -<span class="lineNum"> 127 </span> : */ -<span class="lineNum"> 128 </span><span class="lineCov"> 1 : void clear()</span> -<span class="lineNum"> 129 </span> : { -<span class="lineNum"> 130 </span><span class="lineCov"> 1 : coll.clear();</span> -<span class="lineNum"> 131 </span><span class="lineCov"> 1 : }</span> -<span class="lineNum"> 132 </span> : }; -<span class="lineNum"> 133 </span> : -<span class="lineNum"> 134 </span> : } -<span class="lineNum"> 135 </span> : } -<span class="lineNum"> 136 </span> : -<span class="lineNum"> 137 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 138 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html deleted file mode 100644 index ae0c51f..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html +++ /dev/null @@ -1,263 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - simple.tcc</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">17</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">82.4 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">14</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : /* -<span class="lineNum"> 2 </span> : * Merge tags of items appearing multiple times in a stream of tagged items -<span class="lineNum"> 3 </span> : * -<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 5 </span> : * -<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 14 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 19 </span> : */ -<span class="lineNum"> 20 </span> : -<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_COLL_SIMPLE_TCC -<span class="lineNum"> 22 </span> : #define TAGCOLL_COLL_SIMPLE_TCC -<span class="lineNum"> 23 </span> : -<span class="lineNum"> 24 </span> : #include <tagcoll/utils/set.h> -<span class="lineNum"> 25 </span> : #include <tagcoll/coll/simple.h> -<span class="lineNum"> 26 </span> : #include <tagcoll/patch.h> -<span class="lineNum"> 27 </span> : -<span class="lineNum"> 28 </span> : #include <wibble/operators.h> -<span class="lineNum"> 29 </span> : -<span class="lineNum"> 30 </span> : using namespace std; -<span class="lineNum"> 31 </span> : using namespace wibble::operators; -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : namespace tagcoll { -<span class="lineNum"> 34 </span> : namespace coll { -<span class="lineNum"> 35 </span> : -<span class="lineNum"> 36 </span> : -<span class="lineNum"> 37 </span> : template<class ITEM, class TAG> template<typename ITEMS, typename TAGS> -<span class="lineNum"> 38 </span><span class="lineCov"> 42293 : void Simple<ITEM, TAG>::insert(const ITEMS& items, const TAGS& tags)</span> -<span class="lineNum"> 39 </span> : { -<span class="lineNum"> 40 </span> : using namespace wibble::operators; -<span class="lineNum"> 41 </span> : -<span class="lineNum"> 42 </span><span class="lineCov"> 42295 : if (tags.empty())</span> -<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : return;</span> -<span class="lineNum"> 44 </span><span class="lineCov"> 84590 : for (typename ITEMS::const_iterator i = items.begin();</span> -<span class="lineNum"> 45 </span> : i != items.end(); ++i) -<span class="lineNum"> 46 </span> : { -<span class="lineNum"> 47 </span><span class="lineCov"> 42295 : typename std::map< ITEM, std::set<TAG> >::iterator iter = coll.find(*i);</span> -<span class="lineNum"> 48 </span><span class="lineCov"> 42295 : if (iter == coll.end())</span> -<span class="lineNum"> 49 </span><span class="lineCov"> 21149 : coll.insert(std::make_pair(*i, std::set<TAG>() | tags));</span> -<span class="lineNum"> 50 </span> : else -<span class="lineNum"> 51 </span><span class="lineCov"> 21146 : iter->second |= tags;</span> -<span class="lineNum"> 52 </span> : } -<span class="lineNum"> 53 </span> : } -<span class="lineNum"> 54 </span> : -<span class="lineNum"> 55 </span> : template<class ITEM, class TAG> -<span class="lineNum"> 56 </span> : std::set<TAG> Simple<ITEM, TAG>::getTagsOfItem(const ITEM& item) const -<span class="lineNum"> 57 </span> : { -<span class="lineNum"> 58 </span><span class="lineCov"> 2 : typename map< ITEM, std::set<TAG> >::const_iterator i = coll.find(item);</span> -<span class="lineNum"> 59 </span> : -<span class="lineNum"> 60 </span><span class="lineCov"> 2 : if (i == coll.end())</span> -<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : return std::set<TAG>();</span> -<span class="lineNum"> 62 </span> : else -<span class="lineNum"> 63 </span><span class="lineCov"> 2 : return i->second;</span> -<span class="lineNum"> 64 </span> : } -<span class="lineNum"> 65 </span> : -<span class="lineNum"> 66 </span> : template<class ITEM, class TAG> -<span class="lineNum"> 67 </span> : std::set<ITEM> Simple<ITEM, TAG>::getItemsHavingTag(const TAG& tag) const -<span class="lineNum"> 68 </span> : { -<span class="lineNum"> 69 </span> : std::set<ITEM> res; -<span class="lineNum"> 70 </span> : for (typename map< ITEM, std::set<TAG> >::const_iterator i = coll.begin(); -<span class="lineNum"> 71 </span> : i != coll.end(); i++) -<span class="lineNum"> 72 </span> : if (i->second.find(tag) != i->second.end()) -<span class="lineNum"> 73 </span> : res |= i->first; -<span class="lineNum"> 74 </span> : return res; -<span class="lineNum"> 75 </span> : } -<span class="lineNum"> 76 </span> : -<span class="lineNum"> 77 </span> : template<class ITEM, class TAG> template<typename TAGS> -<span class="lineNum"> 78 </span> : std::set<ITEM> Simple<ITEM, TAG>::getItemsHavingTags(const TAGS& tags) const -<span class="lineNum"> 79 </span> : { -<span class="lineNum"> 80 </span> : std::set<ITEM> res; -<span class="lineNum"> 81 </span> : for (typename map< ITEM, std::set<TAG> >::const_iterator i = coll.begin(); -<span class="lineNum"> 82 </span> : i != coll.end(); i++) -<span class="lineNum"> 83 </span> : if (utils::set_contains(i->second, tags)) -<span class="lineNum"> 84 </span> : res |= i->first; -<span class="lineNum"> 85 </span> : return res; -<span class="lineNum"> 86 </span> : } -<span class="lineNum"> 87 </span> : -<span class="lineNum"> 88 </span> : #if 0 -<span class="lineNum"> 89 </span> : template<class T, class Tag> -<span class="lineNum"> 90 </span> : void Simple<T, Tag>::outputReversed(Consumer<Tag, T>& consumer) const -<span class="lineNum"> 91 </span> : { -<span class="lineNum"> 92 </span> : for (typename map< T, std::set<Tag> >::const_iterator i = coll.begin(); -<span class="lineNum"> 93 </span> : i != coll.end(); i++) -<span class="lineNum"> 94 </span> : { -<span class="lineNum"> 95 </span> : std::set<T> items; -<span class="lineNum"> 96 </span> : items |= i->first; -<span class="lineNum"> 97 </span> : consumer.consume(i->second, items); -<span class="lineNum"> 98 </span> : } -<span class="lineNum"> 99 </span> : } -<span class="lineNum"> 100 </span> : #endif -<span class="lineNum"> 101 </span> : -<span class="lineNum"> 102 </span> : template<class ITEM, class TAG> template<typename TAGS, typename OUT> -<span class="lineNum"> 103 </span> : void Simple<ITEM, TAG>::outputHavingTags(const TAGS& ts, OUT out) const -<span class="lineNum"> 104 </span> : { -<span class="lineNum"> 105 </span> : for (typename map< ITEM, std::set<TAG> >::const_iterator i = coll.begin(); -<span class="lineNum"> 106 </span> : i != coll.end(); ++i) -<span class="lineNum"> 107 </span> : if (utils::set_contains(i->second, ts)) -<span class="lineNum"> 108 </span> : { -<span class="lineNum"> 109 </span> : *out = *i; -<span class="lineNum"> 110 </span> : ++out; -<span class="lineNum"> 111 </span> : } -<span class="lineNum"> 112 </span> : } -<span class="lineNum"> 113 </span> : -<span class="lineNum"> 114 </span> : -<span class="lineNum"> 115 </span> : -<span class="lineNum"> 116 </span> : template<class T, class Tag> -<span class="lineNum"> 117 </span> : void Simple<T, Tag>::applyChange(const PatchList<T, Tag>& change) -<span class="lineNum"> 118 </span> : { -<span class="lineNum"> 119 </span> : for (typename PatchList<T, Tag>::const_iterator i = change.begin(); i != change.end(); i++) -<span class="lineNum"> 120 </span> : { -<span class="lineNum"> 121 </span> : typename map< T, std::set<Tag> >::iterator it = coll.find(i->first); -<span class="lineNum"> 122 </span> : if (it == coll.end()) -<span class="lineNum"> 123 </span> : { -<span class="lineNum"> 124 </span> : // If the item doesn't exist, create it -<span class="lineNum"> 125 </span> : coll.insert(make_pair(i->first, i->second.added)); -<span class="lineNum"> 126 </span> : } else { -<span class="lineNum"> 127 </span> : it->second = i->second.apply(it->second); -<span class="lineNum"> 128 </span> : } -<span class="lineNum"> 129 </span> : } -<span class="lineNum"> 130 </span> : } -<span class="lineNum"> 131 </span> : -<span class="lineNum"> 132 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 133 </span> : std::set<ITEM> Simple<ITEM, TAG>::getTaggedItems() const -<span class="lineNum"> 134 </span> : { -<span class="lineNum"> 135 </span> : std::set<ITEM> res; -<span class="lineNum"> 136 </span> : for (typename std::map< ITEM, std::set<TAG> >::const_iterator i = coll.begin(); -<span class="lineNum"> 137 </span> : i != coll.end(); i++) -<span class="lineNum"> 138 </span> : res.insert(i->first); -<span class="lineNum"> 139 </span> : return res; -<span class="lineNum"> 140 </span> : } -<span class="lineNum"> 141 </span> : -<span class="lineNum"> 142 </span> : template<class T, class Tag> -<span class="lineNum"> 143 </span> : std::set<Tag> Simple<T, Tag>::getAllTags() const -<span class="lineNum"> 144 </span> : { -<span class="lineNum"> 145 </span><span class="lineCov"> 3 : std::set<Tag> tags;</span> -<span class="lineNum"> 146 </span> : -<span class="lineNum"> 147 </span><span class="lineCov"> 6 : for (typename map< T, std::set<Tag> >::const_iterator i = coll.begin();</span> -<span class="lineNum"> 148 </span> : i != coll.end(); i++) -<span class="lineNum"> 149 </span><span class="lineCov"> 3 : tags |= i->second;</span> -<span class="lineNum"> 150 </span> : -<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : return tags;</span> -<span class="lineNum"> 152 </span> : } -<span class="lineNum"> 153 </span> : -<span class="lineNum"> 154 </span> : template<class T, class Tag> -<span class="lineNum"> 155 </span> : std::set<Tag> Simple<T, Tag>::getCompanionTags(const std::set<Tag>& ts) const -<span class="lineNum"> 156 </span> : { -<span class="lineNum"> 157 </span> : std::set<Tag> tags; -<span class="lineNum"> 158 </span> : -<span class="lineNum"> 159 </span> : for (typename map< T, std::set<Tag> >::const_iterator i = coll.begin(); -<span class="lineNum"> 160 </span> : i != coll.end(); i++) -<span class="lineNum"> 161 </span> : if (utils::set_contains(i->second, (ts))) -<span class="lineNum"> 162 </span> : tags |= i->second - ts; -<span class="lineNum"> 163 </span> : -<span class="lineNum"> 164 </span> : return tags; -<span class="lineNum"> 165 </span> : } -<span class="lineNum"> 166 </span> : -<span class="lineNum"> 167 </span> : template<class T, class Tag> -<span class="lineNum"> 168 </span> : std::set<T> Simple<T, Tag>::getRelatedItems(const std::set<Tag>& tags, int maxdistance) const -<span class="lineNum"> 169 </span> : { -<span class="lineNum"> 170 </span> : std::set<T> res; -<span class="lineNum"> 171 </span> : -<span class="lineNum"> 172 </span> : for (typename map< T, std::set<Tag> >::const_iterator i = coll.begin(); -<span class="lineNum"> 173 </span> : i != coll.end(); i++) -<span class="lineNum"> 174 </span> : { -<span class="lineNum"> 175 </span> : int dist = utils::set_distance(tags, i->second); -<span class="lineNum"> 176 </span> : if (dist >= 0 && dist <= maxdistance) -<span class="lineNum"> 177 </span> : res |= i->first; -<span class="lineNum"> 178 </span> : } -<span class="lineNum"> 179 </span> : -<span class="lineNum"> 180 </span> : return res; -<span class="lineNum"> 181 </span> : } -<span class="lineNum"> 182 </span> : -<span class="lineNum"> 183 </span> : template<class T, class Tag> -<span class="lineNum"> 184 </span> : unsigned int Simple<T, Tag>::itemCount() const -<span class="lineNum"> 185 </span> : { -<span class="lineNum"> 186 </span><span class="lineCov"> 5 : return coll.size();</span> -<span class="lineNum"> 187 </span> : } -<span class="lineNum"> 188 </span> : -<span class="lineNum"> 189 </span> : } -<span class="lineNum"> 190 </span> : } -<span class="lineNum"> 191 </span> : -<span class="lineNum"> 192 </span> : #include <tagcoll/coll/base.tcc> -<span class="lineNum"> 193 </span> : -<span class="lineNum"> 194 </span> : #endif -<span class="lineNum"> 195 </span> : -<span class="lineNum"> 196 </span> : // vim:set ts=4 sw=4: -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html deleted file mode 100644 index b47f674..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html +++ /dev/null @@ -1,92 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/diskindex</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/diskindex</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">15</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">93.3 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">14</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <center> - <table width="80%" cellpadding=2 cellspacing=1 border=0> - - <tr> - <td width="50%"><br></td> - <td width="15%"></td> - <td width="15%"></td> - <td width="20%"></td> - </tr> - - <tr> - <td class="tableHead">Filename</td> - <td class="tableHead" colspan=3>Coverage</td> - </tr> - - <tr> - <td class="coverFile"><a href="int.h.gcov.html">int.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=91 height=10 alt="90.9%"><img src="../../../../../snow.png" width=9 height=10 alt="90.9%"></td></tr></table> - </td> - <td class="coverPerHi">90.9 %</td> - <td class="coverNumHi">10 / 11 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="mmap.h.gcov.html">mmap.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">4 / 4 lines</td> - </tr> - - </table> - </center> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html deleted file mode 100644 index 757c384..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html +++ /dev/null @@ -1,158 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/diskindex</a> - int.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">11</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">90.9 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">10</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_DISKINDEX_INT_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_DISKINDEX_INT_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Fast index for tag data, based on integer indexes -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify -<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by -<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or -<span class="lineNum"> 14 </span> : * (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -<span class="lineNum"> 19 </span> : * GNU General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License -<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <tagcoll/diskindex/mmap.h> -<span class="lineNum"> 27 </span> : #include <vector> -<span class="lineNum"> 28 </span> : #include <set> -<span class="lineNum"> 29 </span> : -<span class="lineNum"> 30 </span> : namespace tagcoll { -<span class="lineNum"> 31 </span> : namespace diskindex { -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : /** -<span class="lineNum"> 34 </span> : * MMap-based index of a -> [x1, x2, x3] mappings -<span class="lineNum"> 35 </span> : * -<span class="lineNum"> 36 </span> : * The layout is: -<span class="lineNum"> 37 </span> : * -<span class="lineNum"> 38 </span> : * [offset of mapping for item 0, offset of mapping for item 1...] -<span class="lineNum"> 39 </span> : * [size of array][sorted array of ints pointed by index 0] -<span class="lineNum"> 40 </span> : * [size of array][sorted array of ints pointed by index 1] -<span class="lineNum"> 41 </span> : * [size of array][sorted array of ints pointed by index 2] -<span class="lineNum"> 42 </span> : * [...] -<span class="lineNum"> 43 </span> : * [number of items in the mapping] -<span class="lineNum"> 44 </span> : * -<span class="lineNum"> 45 </span> : * This allows fast lookups, as well as fast lookups of unions or intersections -<span class="lineNum"> 46 </span> : * of mapped arrays. -<span class="lineNum"> 47 </span> : * -<span class="lineNum"> 48 </span> : * The number of items for an ID not present in the index is assumed to be 0. -<span class="lineNum"> 49 </span> : */ -<span class="lineNum"> 50 </span> : class Int : public MMap -<span class="lineNum"> 51 </span> : { -<span class="lineNum"> 52 </span> : protected: -<span class="lineNum"> 53 </span><span class="lineCov"> 274890 : inline int* buf() const { return (int*)m_buf; }</span> -<span class="lineNum"> 54 </span><span class="lineCov"> 274890 : inline size_t ofs(int val) const { return buf()[val]; }</span> -<span class="lineNum"> 55 </span> : -<span class="lineNum"> 56 </span> : public: -<span class="lineNum"> 57 </span><span class="lineCov"> 20 : Int() {}</span> -<span class="lineNum"> 58 </span> : Int(const MasterMMap& master, int idx) : MMap(master, idx) {} -<span class="lineNum"> 59 </span> : -<span class="lineNum"> 60 </span> : const int* data(int val) const { return (val >= 0 && (unsigned)val < size()) ? buf() + ofs(val) + 1 : 0; } -<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : size_t size(int val) const { return (val >= 0 && (unsigned)val < size()) ? buf()[ofs(val)] : 0; }</span> -<span class="lineNum"> 62 </span><span class="lineCov"> 274893 : size_t size() const { return m_buf ? ofs(0) : 0; }</span> -<span class="lineNum"> 63 </span> : }; -<span class="lineNum"> 64 </span> : -<span class="lineNum"> 65 </span> : /** -<span class="lineNum"> 66 </span> : * Creates an on-disk index to use for IntIndex -<span class="lineNum"> 67 </span> : */ -<span class="lineNum"> 68 </span> : class IntIndexer : public MMapIndexer, public std::vector<std::set<int> > -<span class="lineNum"> 69 </span><span class="lineCov"> 4 : {</span> -<span class="lineNum"> 70 </span> : public: -<span class="lineNum"> 71 </span> : /// Store the key->val mapping into the indexer -<span class="lineNum"> 72 </span><span class="lineCov"> 211196 : void map(unsigned int key, int val)</span> -<span class="lineNum"> 73 </span> : { -<span class="lineNum"> 74 </span><span class="lineCov"> 211196 : if (size() <= key)</span> -<span class="lineNum"> 75 </span><span class="lineCov"> 21142 : resize(key + 1);</span> -<span class="lineNum"> 76 </span><span class="lineCov"> 211196 : (*this)[key].insert(val);</span> -<span class="lineNum"> 77 </span><span class="lineCov"> 211196 : }</span> -<span class="lineNum"> 78 </span> : -<span class="lineNum"> 79 </span> : /// Return the size of the encoded index data -<span class="lineNum"> 80 </span> : virtual int encodedSize() const; -<span class="lineNum"> 81 </span> : -<span class="lineNum"> 82 </span> : /// Write the index data in the given buffer, which should be at least -<span class="lineNum"> 83 </span> : /// encodedSize bytes -<span class="lineNum"> 84 </span> : virtual void encode(char* buf) const; -<span class="lineNum"> 85 </span> : }; -<span class="lineNum"> 86 </span> : -<span class="lineNum"> 87 </span> : } -<span class="lineNum"> 88 </span> : } -<span class="lineNum"> 89 </span> : -<span class="lineNum"> 90 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 91 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html deleted file mode 100644 index 8925ba5..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html +++ /dev/null @@ -1,196 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/diskindex</a> - mmap.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">4</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">4</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_DISKINDEX_MMAP_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_DISKINDEX_MMAP_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Basic infrastructure for implementing mmapped indexes -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify -<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by -<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or -<span class="lineNum"> 14 </span> : * (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -<span class="lineNum"> 19 </span> : * GNU General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License -<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <string> -<span class="lineNum"> 27 </span> : -<span class="lineNum"> 28 </span> : namespace tagcoll { -<span class="lineNum"> 29 </span> : namespace diskindex { -<span class="lineNum"> 30 </span> : -<span class="lineNum"> 31 </span> : class mmap; -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : /** -<span class="lineNum"> 34 </span> : * Performs the memory management and mmapping tasks for mmapped indexes. -<span class="lineNum"> 35 </span> : * -<span class="lineNum"> 36 </span> : * One MMap can contain many indexes. Indexes come chained one after the -<span class="lineNum"> 37 </span> : * other, prefixed by an int that specifies their length: -<span class="lineNum"> 38 </span> : * -<span class="lineNum"> 39 </span> : * [size of index 1][index1][size of index 2][index]... -<span class="lineNum"> 40 </span> : * -<span class="lineNum"> 41 </span> : * Every index must make sure that its size is int-aligned, otherwise accessing -<span class="lineNum"> 42 </span> : * it would cause a bus error in many architectures. -<span class="lineNum"> 43 </span> : */ -<span class="lineNum"> 44 </span> : class MasterMMap -<span class="lineNum"> 45 </span> : { -<span class="lineNum"> 46 </span> : protected: -<span class="lineNum"> 47 </span> : std::string m_filename; -<span class="lineNum"> 48 </span> : size_t m_size; -<span class="lineNum"> 49 </span> : int m_fd; -<span class="lineNum"> 50 </span> : const char* m_buf; -<span class="lineNum"> 51 </span> : -<span class="lineNum"> 52 </span> : public: -<span class="lineNum"> 53 </span> : MasterMMap(); -<span class="lineNum"> 54 </span> : MasterMMap(const std::string& filename); -<span class="lineNum"> 55 </span> : ~MasterMMap(); -<span class="lineNum"> 56 </span> : -<span class="lineNum"> 57 </span> : void init(const std::string& filename); -<span class="lineNum"> 58 </span> : -<span class="lineNum"> 59 </span> : friend class MMap; -<span class="lineNum"> 60 </span> : }; -<span class="lineNum"> 61 </span> : -<span class="lineNum"> 62 </span> : class MMap -<span class="lineNum"> 63 </span> : { -<span class="lineNum"> 64 </span> : protected: -<span class="lineNum"> 65 </span> : const MasterMMap* m_master; -<span class="lineNum"> 66 </span> : const char* m_buf; -<span class="lineNum"> 67 </span> : size_t m_size; -<span class="lineNum"> 68 </span> : -<span class="lineNum"> 69 </span> : public: -<span class="lineNum"> 70 </span> : MMap(); -<span class="lineNum"> 71 </span> : MMap(const char* buf, int size); -<span class="lineNum"> 72 </span> : MMap(const MasterMMap& master, size_t idx); -<span class="lineNum"> 73 </span> : -<span class="lineNum"> 74 </span> : void init(const char* buf, int size); -<span class="lineNum"> 75 </span> : void init(const MasterMMap& master, size_t idx); -<span class="lineNum"> 76 </span> : -<span class="lineNum"> 77 </span> : /// Round a value to the next word size in the current architecture -<span class="lineNum"> 78 </span> : template<class INT> -<span class="lineNum"> 79 </span><span class="lineCov"> 12 : static inline INT align(INT val)</span> -<span class="lineNum"> 80 </span> : { -<span class="lineNum"> 81 </span><span class="lineCov"> 12 : return (val + sizeof(int) - 1) & ~(sizeof(int) - 1);</span> -<span class="lineNum"> 82 </span> : } -<span class="lineNum"> 83 </span> : }; -<span class="lineNum"> 84 </span> : -<span class="lineNum"> 85 </span> : /** -<span class="lineNum"> 86 </span> : * Interface for indexers. -<span class="lineNum"> 87 </span> : */ -<span class="lineNum"> 88 </span> : class MMapIndexer -<span class="lineNum"> 89 </span><span class="lineCov"> 20 : {</span> -<span class="lineNum"> 90 </span> : public: -<span class="lineNum"> 91 </span><span class="lineCov"> 20 : virtual ~MMapIndexer() {}</span> -<span class="lineNum"> 92 </span> : -<span class="lineNum"> 93 </span> : /// Return the size of the encoded index data (in bytes) -<span class="lineNum"> 94 </span> : virtual int encodedSize() const = 0; -<span class="lineNum"> 95 </span> : -<span class="lineNum"> 96 </span> : /// Write the index data in the given buffer, which should be at least -<span class="lineNum"> 97 </span> : /// encodedSize bytes -<span class="lineNum"> 98 </span> : virtual void encode(char* buf) const = 0; -<span class="lineNum"> 99 </span> : }; -<span class="lineNum"> 100 </span> : -<span class="lineNum"> 101 </span> : /** -<span class="lineNum"> 102 </span> : * Master index writer. It allows to write many indexes in the same file, -<span class="lineNum"> 103 </span> : * atomically: the file will be created as a tempfile and atomically renamed to -<span class="lineNum"> 104 </span> : * the destination filename on class destruction. -<span class="lineNum"> 105 </span> : */ -<span class="lineNum"> 106 </span> : class MasterMMapIndexer -<span class="lineNum"> 107 </span> : { -<span class="lineNum"> 108 </span> : protected: -<span class="lineNum"> 109 </span> : std::string finalname; -<span class="lineNum"> 110 </span> : std::string tmpname; -<span class="lineNum"> 111 </span> : int fd; -<span class="lineNum"> 112 </span> : -<span class="lineNum"> 113 </span> : public: -<span class="lineNum"> 114 </span> : MasterMMapIndexer(const std::string& filename); -<span class="lineNum"> 115 </span> : ~MasterMMapIndexer(); -<span class="lineNum"> 116 </span> : -<span class="lineNum"> 117 </span> : /// Close the file and perform the final rename -<span class="lineNum"> 118 </span> : void commit(); -<span class="lineNum"> 119 </span> : -<span class="lineNum"> 120 </span> : /// Append one subindex -<span class="lineNum"> 121 </span> : void append(const MMapIndexer& idx); -<span class="lineNum"> 122 </span> : }; -<span class="lineNum"> 123 </span> : -<span class="lineNum"> 124 </span> : -<span class="lineNum"> 125 </span> : } -<span class="lineNum"> 126 </span> : } -<span class="lineNum"> 127 </span> : -<span class="lineNum"> 128 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 129 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html deleted file mode 100644 index 128d3fb..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html +++ /dev/null @@ -1,249 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/expression.h</title> - <link rel="stylesheet" type="text/css" href="../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - expression.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">10</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">10</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_EXPRESSION_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_EXPRESSION_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /* -<span class="lineNum"> 5 </span> : * Expression that can match tagsets -<span class="lineNum"> 6 </span> : * -<span class="lineNum"> 7 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 8 </span> : * -<span class="lineNum"> 9 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 10 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 11 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 12 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 13 </span> : * -<span class="lineNum"> 14 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 17 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 18 </span> : * -<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 20 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 22 </span> : */ -<span class="lineNum"> 23 </span> : -<span class="lineNum"> 24 </span> : #include <string> -<span class="lineNum"> 25 </span> : #include <set> -<span class="lineNum"> 26 </span> : #include <map> -<span class="lineNum"> 27 </span> : #include <wibble/singleton.h> -<span class="lineNum"> 28 </span> : #include <wibble/mixin.h> -<span class="lineNum"> 29 </span> : -<span class="lineNum"> 30 </span> : namespace tagcoll -<span class="lineNum"> 31 </span> : { -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : class TagexprContext; -<span class="lineNum"> 34 </span> : -<span class="lineNum"> 35 </span> : /** -<span class="lineNum"> 36 </span> : * Interface for parsed tag expressions -<span class="lineNum"> 37 </span> : */ -<span class="lineNum"> 38 </span> : class ExpressionImpl -<span class="lineNum"> 39 </span> : { -<span class="lineNum"> 40 </span> : protected: -<span class="lineNum"> 41 </span> : int _ref; -<span class="lineNum"> 42 </span> : -<span class="lineNum"> 43 </span> : public: -<span class="lineNum"> 44 </span> : ExpressionImpl() : _ref(0) {} -<span class="lineNum"> 45 </span> : virtual ~ExpressionImpl() {} -<span class="lineNum"> 46 </span> : -<span class="lineNum"> 47 </span> : /// Increment the reference count for this object -<span class="lineNum"> 48 </span><span class="lineCov"> 10 : void ref() throw () { ++_ref; }</span> -<span class="lineNum"> 49 </span> : -<span class="lineNum"> 50 </span> : /// Decrement the reference count for this object, returning true when it -<span class="lineNum"> 51 </span> : /// reaches 0 -<span class="lineNum"> 52 </span><span class="lineCov"> 22 : bool unref() throw () { return --_ref == 0; }</span> -<span class="lineNum"> 53 </span> : -<span class="lineNum"> 54 </span> : /** -<span class="lineNum"> 55 </span> : * Provide a string representation of this expression -<span class="lineNum"> 56 </span> : */ -<span class="lineNum"> 57 </span> : virtual std::string format() const = 0; -<span class="lineNum"> 58 </span> : -<span class="lineNum"> 59 </span> : /** -<span class="lineNum"> 60 </span> : * Evaluates the expression on a recursive context -<span class="lineNum"> 61 </span> : * -<span class="lineNum"> 62 </span> : * \see TagexprContext -<span class="lineNum"> 63 </span> : */ -<span class="lineNum"> 64 </span> : virtual bool eval(const TagexprContext& context) const = 0; -<span class="lineNum"> 65 </span> : -<span class="lineNum"> 66 </span> : /** -<span class="lineNum"> 67 </span> : * Evaluates the expression on a set of tags -<span class="lineNum"> 68 </span> : * -<span class="lineNum"> 69 </span> : * \return -<span class="lineNum"> 70 </span> : * true if the expression matches the tags, false otherwise -<span class="lineNum"> 71 </span> : */ -<span class="lineNum"> 72 </span> : virtual bool eval(const std::set<std::string>& tags) const = 0; -<span class="lineNum"> 73 </span> : -<span class="lineNum"> 74 </span> : /** -<span class="lineNum"> 75 </span> : * Return a clone of this tag expression -<span class="lineNum"> 76 </span> : */ -<span class="lineNum"> 77 </span> : //virtual Tagexpr* clone() const = 0; -<span class="lineNum"> 78 </span> : }; -<span class="lineNum"> 79 </span> : -<span class="lineNum"> 80 </span> : class Expression -<span class="lineNum"> 81 </span> : { -<span class="lineNum"> 82 </span> : protected: -<span class="lineNum"> 83 </span> : ExpressionImpl* m_impl; -<span class="lineNum"> 84 </span> : -<span class="lineNum"> 85 </span> : Expression(ExpressionImpl* impl) : m_impl(impl) { m_impl->ref(); } -<span class="lineNum"> 86 </span> : -<span class="lineNum"> 87 </span> : const ExpressionImpl* impl() const { return m_impl; } -<span class="lineNum"> 88 </span> : ExpressionImpl* impl() { return m_impl; } -<span class="lineNum"> 89 </span> : -<span class="lineNum"> 90 </span> : public: -<span class="lineNum"> 91 </span> : Expression(); -<span class="lineNum"> 92 </span> : Expression(const std::string& expr); -<span class="lineNum"> 93 </span> : -<span class="lineNum"> 94 </span> : Expression(const Expression& e) -<span class="lineNum"> 95 </span> : { -<span class="lineNum"> 96 </span> : if (e.m_impl) -<span class="lineNum"> 97 </span> : e.m_impl->ref(); -<span class="lineNum"> 98 </span> : m_impl = e.m_impl; -<span class="lineNum"> 99 </span> : } -<span class="lineNum"> 100 </span><span class="lineCov"> 12 : ~Expression() { if (m_impl->unref()) delete m_impl; }</span> -<span class="lineNum"> 101 </span> : -<span class="lineNum"> 102 </span><span class="lineCov"> 10 : Expression& operator=(const Expression& e)</span> -<span class="lineNum"> 103 </span> : { -<span class="lineNum"> 104 </span><span class="lineCov"> 10 : if (e.m_impl)</span> -<span class="lineNum"> 105 </span><span class="lineCov"> 10 : e.m_impl->ref(); // Do it early to correctly handle the case of x = x;</span> -<span class="lineNum"> 106 </span><span class="lineCov"> 10 : if (m_impl && m_impl->unref())</span> -<span class="lineNum"> 107 </span><span class="lineCov"> 10 : delete m_impl;</span> -<span class="lineNum"> 108 </span><span class="lineCov"> 10 : m_impl = e.m_impl;</span> -<span class="lineNum"> 109 </span><span class="lineCov"> 10 : return *this;</span> -<span class="lineNum"> 110 </span> : } -<span class="lineNum"> 111 </span> : -<span class="lineNum"> 112 </span> : Expression operator and (const Expression& e); -<span class="lineNum"> 113 </span> : Expression operator or (const Expression& e); -<span class="lineNum"> 114 </span> : Expression operator not (); -<span class="lineNum"> 115 </span> : -<span class="lineNum"> 116 </span> : template<typename Tags> -<span class="lineNum"> 117 </span> : bool operator()(const Tags& tags) const -<span class="lineNum"> 118 </span> : { -<span class="lineNum"> 119 </span> : std::set<std::string> stags; -<span class="lineNum"> 120 </span> : for (typename Tags::const_iterator i = tags.begin(); -<span class="lineNum"> 121 </span> : i != tags.end(); ++i) -<span class="lineNum"> 122 </span> : stags.insert(*i); -<span class="lineNum"> 123 </span> : return m_impl->eval(stags); -<span class="lineNum"> 124 </span> : } -<span class="lineNum"> 125 </span> : bool operator()(const std::set<std::string>& tags) const { return m_impl->eval(tags); } -<span class="lineNum"> 126 </span> : -<span class="lineNum"> 127 </span> : bool operator()(const TagexprContext& context) const { return m_impl->eval(context); } -<span class="lineNum"> 128 </span> : -<span class="lineNum"> 129 </span> : std::string format() const { return m_impl->format(); } -<span class="lineNum"> 130 </span> : -<span class="lineNum"> 131 </span> : static Expression matchTag(const std::string& pattern); -<span class="lineNum"> 132 </span> : }; -<span class="lineNum"> 133 </span> : -<span class="lineNum"> 134 </span> : /** -<span class="lineNum"> 135 </span> : * Context for evaluating expressions of derived tags. -<span class="lineNum"> 136 </span> : * -<span class="lineNum"> 137 </span> : * A derived tag is a tag which is automatically inferred when a tag expression -<span class="lineNum"> 138 </span> : * is matched on a tagset. -<span class="lineNum"> 139 </span> : * -<span class="lineNum"> 140 </span> : * TagexprContext allows the inference engine to distinguish between a normal -<span class="lineNum"> 141 </span> : * tag or a derived tag. -<span class="lineNum"> 142 </span> : * -<span class="lineNum"> 143 </span> : * This class is mainly used to support DerivedTags and has probably little -<span class="lineNum"> 144 </span> : * applications elsewhere. -<span class="lineNum"> 145 </span> : */ -<span class="lineNum"> 146 </span> : class TagexprContext -<span class="lineNum"> 147 </span> : { -<span class="lineNum"> 148 </span> : protected: -<span class="lineNum"> 149 </span> : const std::set<std::string>& tags; -<span class="lineNum"> 150 </span> : const std::map<std::string, Expression>& derivedTags; -<span class="lineNum"> 151 </span> : // Tags "visited" during tag evaluation: used to break circular loops -<span class="lineNum"> 152 </span> : mutable std::set<std::string> seen; -<span class="lineNum"> 153 </span> : -<span class="lineNum"> 154 </span> : public: -<span class="lineNum"> 155 </span> : /** -<span class="lineNum"> 156 </span> : * Create a context for recursive tagset evaluation -<span class="lineNum"> 157 </span> : * -<span class="lineNum"> 158 </span> : * Evaluation happens using a derivation table, which can list a tag as an -<span class="lineNum"> 159 </span> : * alias for another tag expression. Whenever a tag is matched for -<span class="lineNum"> 160 </span> : * equality with a derived tag, the match is performed with the derived tag -<span class="lineNum"> 161 </span> : * expression instead. -<span class="lineNum"> 162 </span> : * -<span class="lineNum"> 163 </span> : * \param tags -<span class="lineNum"> 164 </span> : * The tags to evaluate -<span class="lineNum"> 165 </span> : * \param derivedTags -<span class="lineNum"> 166 </span> : * The table of derived tags to use in the evaluation -<span class="lineNum"> 167 </span> : */ -<span class="lineNum"> 168 </span> : TagexprContext(const std::set<std::string>& tags, const std::map<std::string, Expression>& derivedTags) -<span class="lineNum"> 169 </span> : : tags(tags), derivedTags(derivedTags) {} -<span class="lineNum"> 170 </span> : -<span class="lineNum"> 171 </span> : /** -<span class="lineNum"> 172 </span> : * Evaluates the input tags on the contents to see if they contain the -<span class="lineNum"> 173 </span> : * given tag, or if they match its associated tag expression if tag is a -<span class="lineNum"> 174 </span> : * derived tag -<span class="lineNum"> 175 </span> : */ -<span class="lineNum"> 176 </span> : bool eval(const std::string& tag) const; -<span class="lineNum"> 177 </span> : }; -<span class="lineNum"> 178 </span> : -<span class="lineNum"> 179 </span> : }; -<span class="lineNum"> 180 </span> : -<span class="lineNum"> 181 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 182 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/index.html deleted file mode 100644 index 664ae5b..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/index.html +++ /dev/null @@ -1,119 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll</title> - <link rel="stylesheet" type="text/css" href="../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">173</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">73.4 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">127</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <center> - <table width="80%" cellpadding=2 cellspacing=1 border=0> - - <tr> - <td width="50%"><br></td> - <td width="15%"></td> - <td width="15%"></td> - <td width="20%"></td> - </tr> - - <tr> - <td class="tableHead">Filename</td> - <td class="tableHead" colspan=3>Coverage</td> - </tr> - - <tr> - <td class="coverFile"><a href="TextFormat.h.gcov.html">TextFormat.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../ruby.png" width=14 height=10 alt="14.3%"><img src="../../../../snow.png" width=86 height=10 alt="14.3%"></td></tr></table> - </td> - <td class="coverPerLo">14.3 %</td> - <td class="coverNumLo">1 / 7 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="TextFormat.tcc.gcov.html">TextFormat.tcc</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=54 height=10 alt="54.4%"><img src="../../../../snow.png" width=46 height=10 alt="54.4%"></td></tr></table> - </td> - <td class="coverPerHi">54.4 %</td> - <td class="coverNumHi">43 / 79 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="expression.h.gcov.html">expression.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">10 / 10 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="patch.h.gcov.html">patch.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">42 / 42 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="patch.tcc.gcov.html">patch.tcc</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=89 height=10 alt="88.6%"><img src="../../../../snow.png" width=11 height=10 alt="88.6%"></td></tr></table> - </td> - <td class="coverPerHi">88.6 %</td> - <td class="coverNumHi">31 / 35 lines</td> - </tr> - - </table> - </center> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html deleted file mode 100644 index 5fb2a07..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html +++ /dev/null @@ -1,184 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input/base.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/input</a> - base.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">14</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">7.1 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">1</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_INPUT_BASE_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_INPUT_BASE_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Base class for parsers -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <string> -<span class="lineNum"> 27 </span> : #include <wibble/exception.h> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : -<span class="lineNum"> 31 </span> : namespace input { -<span class="lineNum"> 32 </span> : class Input; -<span class="lineNum"> 33 </span> : } -<span class="lineNum"> 34 </span> : -<span class="lineNum"> 35 </span> : namespace exception { -<span class="lineNum"> 36 </span> : -<span class="lineNum"> 37 </span> : /** -<span class="lineNum"> 38 </span> : * Base exception for parser errors -<span class="lineNum"> 39 </span> : */ -<span class="lineNum"> 40 </span> : class Input : public wibble::exception::Consistency -<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : {</span> -<span class="lineNum"> 42 </span> : protected: -<span class="lineNum"> 43 </span> : std::string _file; -<span class="lineNum"> 44 </span> : int _line; -<span class="lineNum"> 45 </span> : -<span class="lineNum"> 46 </span> : std::string makeContext(const std::string& file, int line); -<span class="lineNum"> 47 </span> : -<span class="lineNum"> 48 </span> : public: -<span class="lineNum"> 49 </span> : Input(const tagcoll::input::Input& input, const std::string& message) throw (); -<span class="lineNum"> 50 </span> : Input(const std::string& file, int line, const std::string& message) throw () -<span class="lineNum"> 51 </span> : : wibble::exception::Consistency(makeContext(file, line), message), -<span class="lineNum"> 52 </span> : _file(file), _line(line) {} -<span class="lineNum"> 53 </span><span class="lineNoCov"> 0 : Input(int line, const std::string& message) throw ()</span> -<span class="lineNum"> 54 </span><span class="lineNoCov"> 0 : : wibble::exception::Consistency(makeContext(std::string(), line), message),</span> -<span class="lineNum"> 55 </span><span class="lineNoCov"> 0 : _line(line) {}</span> -<span class="lineNum"> 56 </span> : Input(const std::string& message) throw () -<span class="lineNum"> 57 </span> : : wibble::exception::Consistency(makeContext(std::string(), -1), message), -<span class="lineNum"> 58 </span> : _line(-1) {} -<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : virtual ~Input() throw () {}</span> -<span class="lineNum"> 60 </span> : -<span class="lineNum"> 61 </span> : int line() const throw () { return _line; } -<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : int line(int line) throw () { return _line = line; }</span> -<span class="lineNum"> 63 </span> : -<span class="lineNum"> 64 </span> : const std::string& file() const throw () { return _file; } -<span class="lineNum"> 65 </span> : std::string file() throw () { return _file; } -<span class="lineNum"> 66 </span> : std::string file(const std::string file) throw () { return _file = file; } -<span class="lineNum"> 67 </span> : -<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : virtual const char* type() const throw () { return "Input"; }</span> -<span class="lineNum"> 69 </span> : }; -<span class="lineNum"> 70 </span> : -<span class="lineNum"> 71 </span> : /** -<span class="lineNum"> 72 </span> : * Exception thrown in case of problems accessing the input of the parser -<span class="lineNum"> 73 </span> : */ -<span class="lineNum"> 74 </span> : class Parser : public Input -<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : {</span> -<span class="lineNum"> 76 </span> : public: -<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : Parser(const tagcoll::input::Input& input, const std::string& message) throw ()</span> -<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : : Input(input, message) {}</span> -<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : virtual ~Parser() throw () {}</span> -<span class="lineNum"> 80 </span> : -<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : virtual const char* type() const throw ()</span> -<span class="lineNum"> 82 </span> : { -<span class="lineNum"> 83 </span><span class="lineNoCov"> 0 : return "Parser";</span> -<span class="lineNum"> 84 </span> : } -<span class="lineNum"> 85 </span> : }; -<span class="lineNum"> 86 </span> : -<span class="lineNum"> 87 </span> : } -<span class="lineNum"> 88 </span> : -<span class="lineNum"> 89 </span> : namespace input { -<span class="lineNum"> 90 </span> : -<span class="lineNum"> 91 </span> : /** -<span class="lineNum"> 92 </span> : * Generic interface for parser input readers. -<span class="lineNum"> 93 </span> : * -<span class="lineNum"> 94 </span> : * It encapsulates and hides the reading machinery. It can be implemented as a -<span class="lineNum"> 95 </span> : * file read, a stream read, a decompressing file read, a network read or -<span class="lineNum"> 96 </span> : * whatever else is needed. -<span class="lineNum"> 97 </span> : */ -<span class="lineNum"> 98 </span> : class Input -<span class="lineNum"> 99 </span> : { -<span class="lineNum"> 100 </span> : public: -<span class="lineNum"> 101 </span> : static const int Eof = -1; -<span class="lineNum"> 102 </span> : -<span class="lineNum"> 103 </span> : Input() {} -<span class="lineNum"> 104 </span><span class="lineCov"> 1305 : virtual ~Input() {}</span> -<span class="lineNum"> 105 </span> : -<span class="lineNum"> 106 </span> : virtual const std::string& fileName() const = 0; -<span class="lineNum"> 107 </span> : virtual int lineNumber() const = 0; -<span class="lineNum"> 108 </span> : virtual int nextChar() = 0; -<span class="lineNum"> 109 </span> : virtual void pushChar(int c) = 0; -<span class="lineNum"> 110 </span> : }; -<span class="lineNum"> 111 </span> : -<span class="lineNum"> 112 </span> : } -<span class="lineNum"> 113 </span> : -<span class="lineNum"> 114 </span> : } -<span class="lineNum"> 115 </span> : -<span class="lineNum"> 116 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 117 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html deleted file mode 100644 index 2d2187e..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html +++ /dev/null @@ -1,101 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/input</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">16</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">18.8 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">3</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <center> - <table width="80%" cellpadding=2 cellspacing=1 border=0> - - <tr> - <td width="50%"><br></td> - <td width="15%"></td> - <td width="15%"></td> - <td width="20%"></td> - </tr> - - <tr> - <td class="tableHead">Filename</td> - <td class="tableHead" colspan=3>Coverage</td> - </tr> - - <tr> - <td class="coverFile"><a href="base.h.gcov.html">base.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../ruby.png" width=7 height=10 alt="7.1%"><img src="../../../../../snow.png" width=93 height=10 alt="7.1%"></td></tr></table> - </td> - <td class="coverPerLo">7.1 %</td> - <td class="coverNumLo">1 / 14 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="memory.h.gcov.html">memory.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">1 / 1 lines</td> - </tr> - - <tr> - <td class="coverFile"><a href="string.h.gcov.html">string.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">1 / 1 lines</td> - </tr> - - </table> - </center> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html deleted file mode 100644 index c7d8a43..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html +++ /dev/null @@ -1,127 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input/memory.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/input</a> - memory.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">1</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">1</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_INPUT_MEMORY_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_INPUT_MEMORY_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Parser input using a buffer as input -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003-2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <tagcoll/input/base.h> -<span class="lineNum"> 27 </span> : #include <string> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : namespace input { -<span class="lineNum"> 31 </span> : -<span class="lineNum"> 32 </span> : /** -<span class="lineNum"> 33 </span> : * Parser input using a std::string as input -<span class="lineNum"> 34 </span> : */ -<span class="lineNum"> 35 </span> : class Memory : public Input -<span class="lineNum"> 36 </span> : { -<span class="lineNum"> 37 </span> : protected: -<span class="lineNum"> 38 </span> : const std::string fname; -<span class="lineNum"> 39 </span> : const char* buf; -<span class="lineNum"> 40 </span> : int pos; -<span class="lineNum"> 41 </span> : int len; -<span class="lineNum"> 42 </span> : int _line; -<span class="lineNum"> 43 </span> : -<span class="lineNum"> 44 </span> : public: -<span class="lineNum"> 45 </span> : Memory(const std::string& fname, const char* buf, int len) throw (); -<span class="lineNum"> 46 </span> : Memory(const char* buf, int len) throw (); -<span class="lineNum"> 47 </span><span class="lineCov"> 1301 : virtual ~Memory() throw () {}</span> -<span class="lineNum"> 48 </span> : -<span class="lineNum"> 49 </span> : virtual const std::string& fileName() const throw () { return fname; } -<span class="lineNum"> 50 </span> : virtual int lineNumber() const throw () { return _line; } -<span class="lineNum"> 51 </span> : -<span class="lineNum"> 52 </span> : virtual int nextChar() throw (); -<span class="lineNum"> 53 </span> : virtual void pushChar(int c) throw (); -<span class="lineNum"> 54 </span> : }; -<span class="lineNum"> 55 </span> : -<span class="lineNum"> 56 </span> : } -<span class="lineNum"> 57 </span> : } -<span class="lineNum"> 58 </span> : -<span class="lineNum"> 59 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 60 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html deleted file mode 100644 index e3f330c..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html +++ /dev/null @@ -1,125 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input/string.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/input</a> - string.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">1</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">1</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_INPUT_STRING_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_INPUT_STRING_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Parser input using a std::string as input -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003--2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <tagcoll/input/base.h> -<span class="lineNum"> 27 </span> : #include <string> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : namespace input { -<span class="lineNum"> 31 </span> : -<span class="lineNum"> 32 </span> : /** -<span class="lineNum"> 33 </span> : * Parser input using a std::string as input -<span class="lineNum"> 34 </span> : */ -<span class="lineNum"> 35 </span> : class String : public Input -<span class="lineNum"> 36 </span> : { -<span class="lineNum"> 37 </span> : protected: -<span class="lineNum"> 38 </span> : static const std::string fname; -<span class="lineNum"> 39 </span> : std::string _str; -<span class="lineNum"> 40 </span> : std::string::const_iterator _s; -<span class="lineNum"> 41 </span> : int _line; -<span class="lineNum"> 42 </span> : -<span class="lineNum"> 43 </span> : public: -<span class="lineNum"> 44 </span> : String(const std::string& str); -<span class="lineNum"> 45 </span><span class="lineCov"> 4 : virtual ~String() {}</span> -<span class="lineNum"> 46 </span> : -<span class="lineNum"> 47 </span> : virtual const std::string& fileName() const throw () { return fname; } -<span class="lineNum"> 48 </span> : virtual int lineNumber() const throw () { return _line; } -<span class="lineNum"> 49 </span> : -<span class="lineNum"> 50 </span> : virtual int nextChar(); -<span class="lineNum"> 51 </span> : virtual void pushChar(int c); -<span class="lineNum"> 52 </span> : }; -<span class="lineNum"> 53 </span> : -<span class="lineNum"> 54 </span> : } -<span class="lineNum"> 55 </span> : } -<span class="lineNum"> 56 </span> : -<span class="lineNum"> 57 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 58 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html deleted file mode 100644 index ba07ca2..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html +++ /dev/null @@ -1,271 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/patch.h</title> - <link rel="stylesheet" type="text/css" href="../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - patch.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">42</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">42</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_PATCHES_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_PATCHES_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Classes handling tag patches -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <wibble/operators.h> -<span class="lineNum"> 27 </span> : #include <wibble/mixin.h> -<span class="lineNum"> 28 </span> : #include <map> -<span class="lineNum"> 29 </span> : #include <string> -<span class="lineNum"> 30 </span> : -<span class="lineNum"> 31 </span> : namespace tagcoll -<span class="lineNum"> 32 </span> : { -<span class="lineNum"> 33 </span> : -<span class="lineNum"> 34 </span> : /** -<span class="lineNum"> 35 </span> : * Patch for the tagset of a specific item -<span class="lineNum"> 36 </span> : */ -<span class="lineNum"> 37 </span> : template <typename ITEM, typename TAG> -<span class="lineNum"> 38 </span> : struct Patch -<span class="lineNum"> 39 </span> : { -<span class="lineNum"> 40 </span> : ITEM item; -<span class="lineNum"> 41 </span> : std::set<TAG> added; -<span class="lineNum"> 42 </span> : std::set<TAG> removed; -<span class="lineNum"> 43 </span> : -<span class="lineNum"> 44 </span><span class="lineCov"> 55 : Patch(const Patch<ITEM, TAG>& p) : item(p.item), added(p.added), removed(p.removed) {}</span> -<span class="lineNum"> 45 </span><span class="lineCov"> 5 : Patch(const ITEM& item) : item(item) {}</span> -<span class="lineNum"> 46 </span><span class="lineCov"> 2 : Patch(const ITEM& item, const std::set<TAG>& added, const std::set<TAG>& removed);</span> -<span class="lineNum"> 47 </span> : template<typename CONTA, typename CONTB> -<span class="lineNum"> 48 </span><span class="lineCov"> 2 : Patch(const ITEM& item, const CONTA& added, const CONTB& removed);</span> -<span class="lineNum"> 49 </span><span class="lineCov"> 66 : ~Patch() {}</span> -<span class="lineNum"> 50 </span> : -<span class="lineNum"> 51 </span><span class="lineCov"> 5 : void add(const TAG& tag)</span> -<span class="lineNum"> 52 </span> : { -<span class="lineNum"> 53 </span> : using namespace wibble::operators; -<span class="lineNum"> 54 </span><span class="lineCov"> 5 : added |= tag; removed -= tag;</span> -<span class="lineNum"> 55 </span><span class="lineCov"> 5 : }</span> -<span class="lineNum"> 56 </span><span class="lineCov"> 2 : void add(const std::set<TAG>& tags)</span> -<span class="lineNum"> 57 </span> : { -<span class="lineNum"> 58 </span> : using namespace wibble::operators; -<span class="lineNum"> 59 </span><span class="lineCov"> 2 : added |= tags; removed -= tags;</span> -<span class="lineNum"> 60 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 61 </span><span class="lineCov"> 2 : void remove(const TAG& tag)</span> -<span class="lineNum"> 62 </span> : { -<span class="lineNum"> 63 </span> : using namespace wibble::operators; -<span class="lineNum"> 64 </span><span class="lineCov"> 2 : removed |= tag; added -= tag;</span> -<span class="lineNum"> 65 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 66 </span><span class="lineCov"> 2 : void remove(const std::set<TAG>& tags)</span> -<span class="lineNum"> 67 </span> : { -<span class="lineNum"> 68 </span> : using namespace wibble::operators; -<span class="lineNum"> 69 </span><span class="lineCov"> 2 : removed |= tags; added -= tags;</span> -<span class="lineNum"> 70 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 71 </span> : -<span class="lineNum"> 72 </span> : Patch<ITEM, TAG> getReverse() const -<span class="lineNum"> 73 </span> : { -<span class="lineNum"> 74 </span> : return Patch<ITEM, TAG>(item, removed, added); -<span class="lineNum"> 75 </span> : } -<span class="lineNum"> 76 </span> : -<span class="lineNum"> 77 </span><span class="lineCov"> 2 : void mergeWith(const Patch<ITEM, TAG>& patch)</span> -<span class="lineNum"> 78 </span> : { -<span class="lineNum"> 79 </span><span class="lineCov"> 2 : add(patch.added);</span> -<span class="lineNum"> 80 </span><span class="lineCov"> 2 : remove(patch.removed);</span> -<span class="lineNum"> 81 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 82 </span> : -<span class="lineNum"> 83 </span><span class="lineCov"> 1 : std::set<TAG> apply(const std::set<TAG>& ts) const</span> -<span class="lineNum"> 84 </span> : { -<span class="lineNum"> 85 </span> : using namespace wibble::operators; -<span class="lineNum"> 86 </span><span class="lineCov"> 1 : return (ts | added) - removed;</span> -<span class="lineNum"> 87 </span> : } -<span class="lineNum"> 88 </span> : -<span class="lineNum"> 89 </span> : template<typename TAGS> -<span class="lineNum"> 90 </span> : std::set<TAG> apply(const TAGS& tags) const -<span class="lineNum"> 91 </span> : { -<span class="lineNum"> 92 </span> : using namespace wibble::operators; -<span class="lineNum"> 93 </span> : std::set<TAG> ts; -<span class="lineNum"> 94 </span> : for (typename TAGS::const_iterator i = tags.begin(); -<span class="lineNum"> 95 </span> : i != tags.end(); ++i) -<span class="lineNum"> 96 </span> : ts.insert(*i); -<span class="lineNum"> 97 </span> : return (ts | added) - removed; -<span class="lineNum"> 98 </span> : } -<span class="lineNum"> 99 </span> : -<span class="lineNum"> 100 </span><span class="lineCov"> 4 : void removeRedundant(const std::set<TAG> ts)</span> -<span class="lineNum"> 101 </span> : { -<span class="lineNum"> 102 </span> : using namespace wibble::operators; -<span class="lineNum"> 103 </span> : // Don't add what already exists -<span class="lineNum"> 104 </span><span class="lineCov"> 4 : added -= ts;</span> -<span class="lineNum"> 105 </span> : // Don't remove what does not exist -<span class="lineNum"> 106 </span><span class="lineCov"> 4 : removed -= (removed - ts);</span> -<span class="lineNum"> 107 </span><span class="lineCov"> 4 : }</span> -<span class="lineNum"> 108 </span> : -<span class="lineNum"> 109 </span> : bool operator==(const Patch<ITEM, TAG>& p) const -<span class="lineNum"> 110 </span> : { -<span class="lineNum"> 111 </span> : return p.item == item && p.added == added && p.removed == removed; -<span class="lineNum"> 112 </span> : } -<span class="lineNum"> 113 </span> : bool operator!=(const Patch<ITEM, TAG>& p) const -<span class="lineNum"> 114 </span> : { -<span class="lineNum"> 115 </span> : return p.item != item || p.added != added || p.removed != removed; -<span class="lineNum"> 116 </span> : } -<span class="lineNum"> 117 </span> : }; -<span class="lineNum"> 118 </span> : -<span class="lineNum"> 119 </span> : /** -<span class="lineNum"> 120 </span> : * List of patches that can be applied to a TaggedCollection -<span class="lineNum"> 121 </span> : */ -<span class="lineNum"> 122 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 123 </span> : class PatchList : public std::map<ITEM, Patch<ITEM, TAG> > -<span class="lineNum"> 124 </span><span class="lineCov"> 36 : {</span> -<span class="lineNum"> 125 </span> : public: -<span class="lineNum"> 126 </span><span class="lineCov"> 32 : PatchList() {}</span> -<span class="lineNum"> 127 </span><span class="lineCov"> 3 : PatchList(const PatchList& pl) : std::map<ITEM, Patch<ITEM, TAG> >(pl) {}</span> -<span class="lineNum"> 128 </span> : -<span class="lineNum"> 129 </span> : typedef typename std::map<ITEM, Patch<ITEM, TAG> >::const_iterator const_iterator; -<span class="lineNum"> 130 </span> : typedef typename std::map<ITEM, Patch<ITEM, TAG> >::iterator iterator; -<span class="lineNum"> 131 </span> : -<span class="lineNum"> 132 </span> : /** -<span class="lineNum"> 133 </span> : * Add to this patchlist the patches needed to transform `im1' in `im2' -<span class="lineNum"> 134 </span> : */ -<span class="lineNum"> 135 </span> : template<typename COLL1, typename COLL2> -<span class="lineNum"> 136 </span> : void addPatch(const COLL1& im1, const COLL2& im2); -<span class="lineNum"> 137 </span> : -<span class="lineNum"> 138 </span> : /** -<span class="lineNum"> 139 </span> : * Add `patch' to this PatchList -<span class="lineNum"> 140 </span> : */ -<span class="lineNum"> 141 </span><span class="lineCov"> 15 : void addPatch(const Patch<ITEM, TAG>& patch);</span> -<span class="lineNum"> 142 </span> : -<span class="lineNum"> 143 </span> : /** -<span class="lineNum"> 144 </span> : * Add `patches' to this PatchList -<span class="lineNum"> 145 </span> : */ -<span class="lineNum"> 146 </span> : void addPatch(const PatchList<ITEM, TAG>& patches); -<span class="lineNum"> 147 </span> : -<span class="lineNum"> 148 </span> : /** -<span class="lineNum"> 149 </span> : * Add 'patch' to this PatchList, as tag: +/- package rather than package -<span class="lineNum"> 150 </span> : * +/- tag -<span class="lineNum"> 151 </span> : */ -<span class="lineNum"> 152 </span><span class="lineCov"> 2 : void addPatchInverted(const Patch<TAG, ITEM>& patch);</span> -<span class="lineNum"> 153 </span> : -<span class="lineNum"> 154 </span> : /** -<span class="lineNum"> 155 </span> : * Add 'patches' to this PatchList, as tag: +/- package rather than package -<span class="lineNum"> 156 </span> : * +/- tag -<span class="lineNum"> 157 </span> : */ -<span class="lineNum"> 158 </span><span class="lineCov"> 2 : void addPatchInverted(const PatchList<TAG, ITEM>& patches);</span> -<span class="lineNum"> 159 </span> : -<span class="lineNum"> 160 </span> : /** -<span class="lineNum"> 161 </span> : * If the PatchList contains the give item, invoke -<span class="lineNum"> 162 </span> : * Patch::removeRedundant(tags) on its patch -<span class="lineNum"> 163 </span> : */ -<span class="lineNum"> 164 </span><span class="lineCov"> 4 : void removeRedundant(const ITEM& item, const std::set<TAG>& tags);</span> -<span class="lineNum"> 165 </span> : -<span class="lineNum"> 166 </span> : /** -<span class="lineNum"> 167 </span> : * Patch a tagged item -<span class="lineNum"> 168 </span> : * -<span class="lineNum"> 169 </span> : * @return -<span class="lineNum"> 170 </span> : * The new (patched) set of tags -<span class="lineNum"> 171 </span> : */ -<span class="lineNum"> 172 </span><span class="lineCov"> 14 : std::set<TAG> patch(const ITEM& item, const std::set<TAG>& tagset) const;</span> -<span class="lineNum"> 173 </span> : -<span class="lineNum"> 174 </span> : // Output the patch list to a TagcollConsumer -<span class="lineNum"> 175 </span> : template<typename OUT> -<span class="lineNum"> 176 </span><span class="lineCov"> 3 : void output(OUT out) const;</span> -<span class="lineNum"> 177 </span> : -<span class="lineNum"> 178 </span> : PatchList<ITEM, TAG> getReverse() const; -<span class="lineNum"> 179 </span> : }; -<span class="lineNum"> 180 </span> : -<span class="lineNum"> 181 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 182 </span> : class Inserter : public wibble::mixin::OutputIterator< Inserter<ITEM, TAG> > -<span class="lineNum"> 183 </span> : { -<span class="lineNum"> 184 </span> : PatchList<ITEM, TAG>& patches; -<span class="lineNum"> 185 </span> : public: -<span class="lineNum"> 186 </span><span class="lineCov"> 3 : Inserter(PatchList<ITEM, TAG>& patches) : patches(patches) {}</span> -<span class="lineNum"> 187 </span> : -<span class="lineNum"> 188 </span><span class="lineCov"> 3 : Inserter<ITEM, TAG>& operator=(const Patch<ITEM, TAG>& patch)</span> -<span class="lineNum"> 189 </span> : { -<span class="lineNum"> 190 </span><span class="lineCov"> 3 : patches.addPatch(patch);</span> -<span class="lineNum"> 191 </span><span class="lineCov"> 3 : return *this;</span> -<span class="lineNum"> 192 </span> : } -<span class="lineNum"> 193 </span> : }; -<span class="lineNum"> 194 </span> : -<span class="lineNum"> 195 </span> : template<typename ITEM, typename TAG> -<span class="lineNum"> 196 </span><span class="lineCov"> 3 : Inserter<ITEM, TAG> inserter(PatchList<ITEM, TAG>& patches)</span> -<span class="lineNum"> 197 </span> : { -<span class="lineNum"> 198 </span><span class="lineCov"> 3 : return Inserter<ITEM, TAG>(patches);</span> -<span class="lineNum"> 199 </span> : } -<span class="lineNum"> 200 </span> : -<span class="lineNum"> 201 </span> : } -<span class="lineNum"> 202 </span> : -<span class="lineNum"> 203 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 204 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html deleted file mode 100644 index 129ac91..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html +++ /dev/null @@ -1,231 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/patch.tcc</title> - <link rel="stylesheet" type="text/css" href="../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - patch.tcc</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">35</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">88.6 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">31</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : /* -<span class="lineNum"> 2 </span> : * Classes handling tag patches -<span class="lineNum"> 3 </span> : * -<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 5 </span> : * -<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 14 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 19 </span> : */ -<span class="lineNum"> 20 </span> : -<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_PATCHES_TCC -<span class="lineNum"> 22 </span> : #define TAGCOLL_PATCHES_TCC -<span class="lineNum"> 23 </span> : -<span class="lineNum"> 24 </span> : #include <tagcoll/patch.h> -<span class="lineNum"> 25 </span> : #include <wibble/singleton.h> -<span class="lineNum"> 26 </span> : #include <wibble/empty.h> -<span class="lineNum"> 27 </span> : -<span class="lineNum"> 28 </span> : using namespace std; -<span class="lineNum"> 29 </span> : using namespace wibble::operators; -<span class="lineNum"> 30 </span> : -<span class="lineNum"> 31 </span> : namespace tagcoll { -<span class="lineNum"> 32 </span> : -<span class="lineNum"> 33 </span> : template <typename ITEM, typename TAG> -<span class="lineNum"> 34 </span> : Patch<ITEM, TAG>::Patch(const ITEM& item, const std::set<TAG>& added, const std::set<TAG>& removed) -<span class="lineNum"> 35 </span><span class="lineCov"> 2 : : item(item), added(added-removed), removed(removed-added)</span> -<span class="lineNum"> 36 </span><span class="lineNoCov"> 0 : {</span> -<span class="lineNum"> 37 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 38 </span> : -<span class="lineNum"> 39 </span> : template <typename ITEM, typename TAG> template<typename CONTA, typename CONTB> -<span class="lineNum"> 40 </span><span class="lineCov"> 2 : Patch<ITEM, TAG>::Patch(const ITEM& item, const CONTA& added, const CONTB& removed)</span> -<span class="lineNum"> 41 </span><span class="lineCov"> 4 : : item(item)</span> -<span class="lineNum"> 42 </span> : { -<span class="lineNum"> 43 </span><span class="lineCov"> 4 : std::copy(added.begin(), added.end(), inserter(this->added, this->added.begin()));</span> -<span class="lineNum"> 44 </span><span class="lineCov"> 4 : std::copy(removed.begin(), removed.end(), inserter(this->removed, this->removed.begin()));</span> -<span class="lineNum"> 45 </span><span class="lineCov"> 4 : }</span> -<span class="lineNum"> 46 </span> : -<span class="lineNum"> 47 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 48 </span> : void PatchList<ITEM, TAG>::addPatch(const Patch<ITEM, TAG>& patch) -<span class="lineNum"> 49 </span> : { -<span class="lineNum"> 50 </span> : // Filter out empty patches -<span class="lineNum"> 51 </span><span class="lineCov"> 15 : if (patch.added.empty() && patch.removed.empty())</span> -<span class="lineNum"> 52 </span><span class="lineNoCov"> 0 : return;</span> -<span class="lineNum"> 53 </span> : -<span class="lineNum"> 54 </span><span class="lineCov"> 15 : iterator i = this->find(patch.item);</span> -<span class="lineNum"> 55 </span><span class="lineCov"> 15 : if (i == this->end())</span> -<span class="lineNum"> 56 </span><span class="lineCov"> 13 : insert(make_pair<ITEM, Patch<ITEM, TAG> >(patch.item, patch));</span> -<span class="lineNum"> 57 </span> : else -<span class="lineNum"> 58 </span><span class="lineCov"> 2 : i->second.mergeWith(patch);</span> -<span class="lineNum"> 59 </span> : } -<span class="lineNum"> 60 </span> : -<span class="lineNum"> 61 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 62 </span> : void PatchList<ITEM, TAG>::addPatch(const PatchList<ITEM, TAG>& patches) -<span class="lineNum"> 63 </span> : { -<span class="lineNum"> 64 </span> : for (typename PatchList<ITEM, TAG>::const_iterator i = patches.begin(); -<span class="lineNum"> 65 </span> : i != patches.end(); i++) -<span class="lineNum"> 66 </span> : addPatch(i->second); -<span class="lineNum"> 67 </span> : } -<span class="lineNum"> 68 </span> : -<span class="lineNum"> 69 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 70 </span> : void PatchList<ITEM, TAG>::addPatchInverted(const Patch<TAG, ITEM>& patch) -<span class="lineNum"> 71 </span> : { -<span class="lineNum"> 72 </span> : // Filter out empty patches -<span class="lineNum"> 73 </span><span class="lineCov"> 2 : if (patch.added.empty() && patch.removed.empty())</span> -<span class="lineNum"> 74 </span><span class="lineNoCov"> 0 : return;</span> -<span class="lineNum"> 75 </span> : -<span class="lineNum"> 76 </span><span class="lineCov"> 8 : for (typename std::set<ITEM>::const_iterator i = patch.added.begin();</span> -<span class="lineNum"> 77 </span> : i != patch.added.end(); ++i) -<span class="lineNum"> 78 </span><span class="lineCov"> 2 : addPatch(Patch<ITEM, TAG>(*i, wibble::singleton(patch.item), wibble::Empty<TAG>()));</span> -<span class="lineNum"> 79 </span><span class="lineCov"> 4 : for (typename std::set<ITEM>::const_iterator i = patch.removed.begin();</span> -<span class="lineNum"> 80 </span> : i != patch.removed.end(); ++i) -<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : addPatch(Patch<ITEM, TAG>(*i, wibble::Empty<TAG>(), wibble::singleton(patch.item)));</span> -<span class="lineNum"> 82 </span> : } -<span class="lineNum"> 83 </span> : -<span class="lineNum"> 84 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 85 </span> : void PatchList<ITEM, TAG>::addPatchInverted(const PatchList<TAG, ITEM>& patches) -<span class="lineNum"> 86 </span> : { -<span class="lineNum"> 87 </span><span class="lineCov"> 4 : for (typename PatchList<TAG, ITEM>::const_iterator i = patches.begin();</span> -<span class="lineNum"> 88 </span> : i != patches.end(); i++) -<span class="lineNum"> 89 </span><span class="lineCov"> 2 : addPatchInverted(i->second);</span> -<span class="lineNum"> 90 </span><span class="lineCov"> 2 : }</span> -<span class="lineNum"> 91 </span> : -<span class="lineNum"> 92 </span> : -<span class="lineNum"> 93 </span> : template <class ITEM, class TAG> template<typename COLL1, typename COLL2> -<span class="lineNum"> 94 </span> : void PatchList<ITEM, TAG>::addPatch(const COLL1& im1, const COLL2& im2) -<span class="lineNum"> 95 </span> : { -<span class="lineNum"> 96 </span> : // FIXME: if I could implement the guarantee that the collection iterators -<span class="lineNum"> 97 </span> : // iterate in sorted item order, then I wouldn't need to extract all the -<span class="lineNum"> 98 </span> : // items of im2 -<span class="lineNum"> 99 </span> : std::set<ITEM> im2items = im2.getTaggedItems(); -<span class="lineNum"> 100 </span> : for (typename COLL1::const_iterator i1 = im1.begin(); -<span class="lineNum"> 101 </span> : i1 != im1.end(); ++i1) -<span class="lineNum"> 102 </span> : { -<span class="lineNum"> 103 </span> : im2items.erase(i1->first); -<span class="lineNum"> 104 </span> : std::set<TAG> ts2 = im2.getTagsOfItem(i1->first); -<span class="lineNum"> 105 </span> : std::set<TAG> added = ts2 - i1->second; -<span class="lineNum"> 106 </span> : std::set<TAG> removed = i1->second - ts2; -<span class="lineNum"> 107 </span> : if (!added.empty() || !removed.empty()) -<span class="lineNum"> 108 </span> : addPatch(Patch<ITEM, TAG>(i1->first, added, removed)); -<span class="lineNum"> 109 </span> : } -<span class="lineNum"> 110 </span> : for (typename std::set<ITEM>::const_iterator i = im2items.begin(); -<span class="lineNum"> 111 </span> : i != im2items.end(); ++i) -<span class="lineNum"> 112 </span> : { -<span class="lineNum"> 113 </span> : addPatch(Patch<ITEM, TAG>(*i, im2.getTagsOfItem(*i), wibble::Empty<TAG>())); -<span class="lineNum"> 114 </span> : } -<span class="lineNum"> 115 </span> : } -<span class="lineNum"> 116 </span> : -<span class="lineNum"> 117 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 118 </span> : void PatchList<ITEM, TAG>::removeRedundant(const ITEM& item, const std::set<TAG>& tags) -<span class="lineNum"> 119 </span> : { -<span class="lineNum"> 120 </span><span class="lineCov"> 4 : iterator i = this->find(item);</span> -<span class="lineNum"> 121 </span><span class="lineCov"> 4 : if (i == this->end()) return;</span> -<span class="lineNum"> 122 </span><span class="lineCov"> 4 : i->second.removeRedundant(tags);</span> -<span class="lineNum"> 123 </span> : } -<span class="lineNum"> 124 </span> : -<span class="lineNum"> 125 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 126 </span> : std::set<TAG> PatchList<ITEM, TAG>::patch(const ITEM& item, const std::set<TAG>& tagset) const -<span class="lineNum"> 127 </span> : { -<span class="lineNum"> 128 </span> : // Find the patch record for this item -<span class="lineNum"> 129 </span><span class="lineCov"> 14 : const_iterator p = this->find(item);</span> -<span class="lineNum"> 130 </span><span class="lineCov"> 14 : if (p == this->end())</span> -<span class="lineNum"> 131 </span> : // If there are no patches, return the tagset unchanged -<span class="lineNum"> 132 </span><span class="lineCov"> 13 : return tagset;</span> -<span class="lineNum"> 133 </span> : -<span class="lineNum"> 134 </span> : // There are patches: apply them: -<span class="lineNum"> 135 </span><span class="lineCov"> 1 : return p->second.apply(tagset);</span> -<span class="lineNum"> 136 </span> : } -<span class="lineNum"> 137 </span> : -<span class="lineNum"> 138 </span> : template <class ITEM, class TAG> -<span class="lineNum"> 139 </span> : PatchList<ITEM, TAG> PatchList<ITEM, TAG>::getReverse() const -<span class="lineNum"> 140 </span> : { -<span class="lineNum"> 141 </span> : PatchList<ITEM, TAG> res; -<span class="lineNum"> 142 </span> : for (typename PatchList<ITEM, TAG>::const_iterator i = this->begin(); -<span class="lineNum"> 143 </span> : i != this->end(); i++) -<span class="lineNum"> 144 </span> : res.addPatch(i->second.getReverse()); -<span class="lineNum"> 145 </span> : return res; -<span class="lineNum"> 146 </span> : } -<span class="lineNum"> 147 </span> : -<span class="lineNum"> 148 </span> : template<typename ITEM, typename TAG> template<typename OUT> -<span class="lineNum"> 149 </span> : void PatchList<ITEM, TAG>::output(OUT out) const -<span class="lineNum"> 150 </span> : { -<span class="lineNum"> 151 </span><span class="lineCov"> 6 : for (typename PatchList<ITEM, TAG>::const_iterator i = this->begin();</span> -<span class="lineNum"> 152 </span> : i != this->end(); ++i) -<span class="lineNum"> 153 </span> : { -<span class="lineNum"> 154 </span><span class="lineCov"> 3 : *out = i->second;</span> -<span class="lineNum"> 155 </span><span class="lineCov"> 3 : ++out;</span> -<span class="lineNum"> 156 </span> : } -<span class="lineNum"> 157 </span><span class="lineCov"> 3 : }</span> -<span class="lineNum"> 158 </span> : -<span class="lineNum"> 159 </span> : -<span class="lineNum"> 160 </span><span class="lineCov"> 6 : }</span> -<span class="lineNum"> 161 </span> : -<span class="lineNum"> 162 </span> : #endif -<span class="lineNum"> 163 </span> : -<span class="lineNum"> 164 </span> : // vim:set ts=4 sw=4: -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html deleted file mode 100644 index fdf6159..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html +++ /dev/null @@ -1,83 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/stream</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/stream</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">8</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">8</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <center> - <table width="80%" cellpadding=2 cellspacing=1 border=0> - - <tr> - <td width="50%"><br></td> - <td width="15%"></td> - <td width="15%"></td> - <td width="20%"></td> - </tr> - - <tr> - <td class="tableHead">Filename</td> - <td class="tableHead" colspan=3>Coverage</td> - </tr> - - <tr> - <td class="coverFile"><a href="sink.h.gcov.html">sink.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table> - </td> - <td class="coverPerHi">100.0 %</td> - <td class="coverNumHi">8 / 8 lines</td> - </tr> - - </table> - </center> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html deleted file mode 100644 index 159f2ea..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html +++ /dev/null @@ -1,150 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/stream</a> - sink.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">8</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">100.0 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">8</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_STREAM_SINK_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_STREAM_SINK_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Consumer interface for a stream of tagged items -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <wibble/mixin.h> -<span class="lineNum"> 27 </span> : #include <utility> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : namespace stream { -<span class="lineNum"> 31 </span> : -<span class="lineNum"> 32 </span> : /** -<span class="lineNum"> 33 </span> : * Consumer that discards its input -<span class="lineNum"> 34 </span> : */ -<span class="lineNum"> 35 </span> : class Sink : public wibble::mixin::OutputIterator<Sink> -<span class="lineNum"> 36 </span> : { -<span class="lineNum"> 37 </span> : public: -<span class="lineNum"> 38 </span> : template<typename Data> -<span class="lineNum"> 39 </span> : const Sink& operator=(const Data&) const { return *this; } -<span class="lineNum"> 40 </span> : }; -<span class="lineNum"> 41 </span> : -<span class="lineNum"> 42 </span> : inline Sink sink() -<span class="lineNum"> 43 </span> : { -<span class="lineNum"> 44 </span> : return Sink(); -<span class="lineNum"> 45 </span> : } -<span class="lineNum"> 46 </span> : -<span class="lineNum"> 47 </span> : -<span class="lineNum"> 48 </span> : /** -<span class="lineNum"> 49 </span> : * Consumer that discards its input -<span class="lineNum"> 50 </span> : */ -<span class="lineNum"> 51 </span> : template<typename COUNTER> -<span class="lineNum"> 52 </span> : class CountingSink : public wibble::mixin::OutputIterator< CountingSink<COUNTER> > -<span class="lineNum"> 53 </span> : { -<span class="lineNum"> 54 </span> : COUNTER& countItems; -<span class="lineNum"> 55 </span> : COUNTER& countTags; -<span class="lineNum"> 56 </span> : -<span class="lineNum"> 57 </span> : public: -<span class="lineNum"> 58 </span><span class="lineCov"> 2 : CountingSink(COUNTER& countItems, COUNTER& countTags) :</span> -<span class="lineNum"> 59 </span><span class="lineCov"> 2 : countItems(countItems), countTags(countTags) {}</span> -<span class="lineNum"> 60 </span> : -<span class="lineNum"> 61 </span> : // TODO: see if there's a way of implementing the count using size() when -<span class="lineNum"> 62 </span> : // the method actually exists -<span class="lineNum"> 63 </span> : template<typename ITEMS, typename TAGS> -<span class="lineNum"> 64 </span><span class="lineCov"> 42266 : CountingSink& operator=(const std::pair<ITEMS, TAGS>& data)</span> -<span class="lineNum"> 65 </span> : { -<span class="lineNum"> 66 </span><span class="lineCov"> 42266 : countItems += data.first.size();</span> -<span class="lineNum"> 67 </span><span class="lineCov"> 42266 : countTags += data.second.size();</span> -<span class="lineNum"> 68 </span><span class="lineCov"> 42266 : return *this;</span> -<span class="lineNum"> 69 </span> : } -<span class="lineNum"> 70 </span> : }; -<span class="lineNum"> 71 </span> : -<span class="lineNum"> 72 </span> : template<typename COUNTER> -<span class="lineNum"> 73 </span><span class="lineCov"> 2 : inline CountingSink<COUNTER> countingSink(COUNTER& countItems, COUNTER& countTags)</span> -<span class="lineNum"> 74 </span> : { -<span class="lineNum"> 75 </span><span class="lineCov"> 2 : return CountingSink<COUNTER>(countItems, countTags);</span> -<span class="lineNum"> 76 </span> : } -<span class="lineNum"> 77 </span> : -<span class="lineNum"> 78 </span> : -<span class="lineNum"> 79 </span> : } -<span class="lineNum"> 80 </span> : } -<span class="lineNum"> 81 </span> : -<span class="lineNum"> 82 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 83 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html deleted file mode 100644 index 05577be..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html +++ /dev/null @@ -1,83 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/utils</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/utils</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">12</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">83.3 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">10</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <center> - <table width="80%" cellpadding=2 cellspacing=1 border=0> - - <tr> - <td width="50%"><br></td> - <td width="15%"></td> - <td width="15%"></td> - <td width="20%"></td> - </tr> - - <tr> - <td class="tableHead">Filename</td> - <td class="tableHead" colspan=3>Coverage</td> - </tr> - - <tr> - <td class="coverFile"><a href="set.h.gcov.html">set.h</a></td> - <td class="coverBar" align="center"> - <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=83 height=10 alt="83.3%"><img src="../../../../../snow.png" width=17 height=10 alt="83.3%"></td></tr></table> - </td> - <td class="coverPerHi">83.3 %</td> - <td class="coverNumHi">10 / 12 lines</td> - </tr> - - </table> - </center> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html deleted file mode 100644 index 2ddbb97..0000000 --- a/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html +++ /dev/null @@ -1,155 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> - -<html lang="en"> - -<head> - <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> - <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/utils/set.h</title> - <link rel="stylesheet" type="text/css" href="../../../../../gcov.css"> -</head> - -<body> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="title">LTP GCOV extension - code coverage report</td></tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - - <tr> - <td width="100%"> - <table cellpadding=1 border=0 width="100%"> - <tr> - <td class="headerItem" width="20%">Current view:</td> - <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/utils</a> - set.h</td> - </tr> - <tr> - <td class="headerItem" width="20%">Test:</td> - <td class="headerValue" width="80%" colspan=4>lcov.info</td> - </tr> - <tr> - <td class="headerItem" width="20%">Date:</td> - <td class="headerValue" width="20%">2008-08-14</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Instrumented lines:</td> - <td class="headerValue" width="20%">12</td> - </tr> - <tr> - <td class="headerItem" width="20%">Code covered:</td> - <td class="headerValue" width="20%">83.3 %</td> - <td width="20%"></td> - <td class="headerItem" width="20%">Executed lines:</td> - <td class="headerValue" width="20%">10</td> - </tr> - </table> - </td> - </tr> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - </table> - - <table cellpadding=0 cellspacing=0 border=0> - <tr> - <td><br></td> - </tr> - <tr> - <td><pre class="source"> -<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_UTILS_SET_H -<span class="lineNum"> 2 </span> : #define TAGCOLL_UTILS_SET_H -<span class="lineNum"> 3 </span> : -<span class="lineNum"> 4 </span> : /** \file -<span class="lineNum"> 5 </span> : * Extra useful set operations -<span class="lineNum"> 6 </span> : */ -<span class="lineNum"> 7 </span> : -<span class="lineNum"> 8 </span> : /* -<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini <enrico@debian.org> -<span class="lineNum"> 10 </span> : * -<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or -<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public -<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either -<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version. -<span class="lineNum"> 15 </span> : * -<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful, -<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of -<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -<span class="lineNum"> 19 </span> : * Lesser General Public License for more details. -<span class="lineNum"> 20 </span> : * -<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public -<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software -<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -<span class="lineNum"> 24 </span> : */ -<span class="lineNum"> 25 </span> : -<span class="lineNum"> 26 </span> : #include <wibble/operators.h> -<span class="lineNum"> 27 </span> : #include <set> -<span class="lineNum"> 28 </span> : -<span class="lineNum"> 29 </span> : namespace tagcoll { -<span class="lineNum"> 30 </span> : namespace utils { -<span class="lineNum"> 31 </span> : -<span class="lineNum"> 32 </span> : template<typename T> -<span class="lineNum"> 33 </span> : int set_distance(const std::set<T>& set1, const std::set<T>& set2) -<span class="lineNum"> 34 </span> : { -<span class="lineNum"> 35 </span> : int res = 0; -<span class="lineNum"> 36 </span> : int intCount = 0; -<span class="lineNum"> 37 </span> : -<span class="lineNum"> 38 </span> : typename std::set<T>::const_iterator a = set1.begin(); -<span class="lineNum"> 39 </span> : typename std::set<T>::const_iterator b = set2.begin(); -<span class="lineNum"> 40 </span> : -<span class="lineNum"> 41 </span> : while (a != set1.end() || b != set2.end()) -<span class="lineNum"> 42 </span> : if ((b == set2.end()) || (a != set1.end() && *a < *b)) -<span class="lineNum"> 43 </span> : { -<span class="lineNum"> 44 </span> : res++; -<span class="lineNum"> 45 </span> : a++; -<span class="lineNum"> 46 </span> : } -<span class="lineNum"> 47 </span> : else if ((a == set1.end()) || (b != set2.end() && *b < *a)) -<span class="lineNum"> 48 </span> : { -<span class="lineNum"> 49 </span> : res++; -<span class="lineNum"> 50 </span> : b++; -<span class="lineNum"> 51 </span> : } -<span class="lineNum"> 52 </span> : else -<span class="lineNum"> 53 </span> : { -<span class="lineNum"> 54 </span> : a++; -<span class="lineNum"> 55 </span> : b++; -<span class="lineNum"> 56 </span> : intCount++; -<span class="lineNum"> 57 </span> : } -<span class="lineNum"> 58 </span> : -<span class="lineNum"> 59 </span> : return intCount ? res : -1; -<span class="lineNum"> 60 </span> : } -<span class="lineNum"> 61 </span> : -<span class="lineNum"> 62 </span> : template<typename T> -<span class="lineNum"> 63 </span><span class="lineCov"> 1 : bool set_contains(const std::set<T>& set1, const std::set<T>& set2)</span> -<span class="lineNum"> 64 </span> : { -<span class="lineNum"> 65 </span><span class="lineCov"> 1 : typename std::set<T>::const_iterator b = set2.begin();</span> -<span class="lineNum"> 66 </span> : -<span class="lineNum"> 67 </span><span class="lineCov"> 574 : for (typename std::set<T>::const_iterator a = set1.begin(); a != set1.end(); ++a)</span> -<span class="lineNum"> 68 </span><span class="lineCov"> 574 : if (b == set2.end())</span> -<span class="lineNum"> 69 </span><span class="lineCov"> 1 : return true;</span> -<span class="lineNum"> 70 </span><span class="lineCov"> 573 : else if (*a == *b)</span> -<span class="lineNum"> 71 </span><span class="lineCov"> 31 : b++;</span> -<span class="lineNum"> 72 </span><span class="lineCov"> 542 : else if (*b < *a)</span> -<span class="lineNum"> 73 </span><span class="lineNoCov"> 0 : return false;</span> -<span class="lineNum"> 74 </span> : -<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : return b == set2.end();</span> -<span class="lineNum"> 76 </span> : } -<span class="lineNum"> 77 </span> : -<span class="lineNum"> 78 </span> : template<typename T> -<span class="lineNum"> 79 </span><span class="lineCov"> 4 : bool set_contains(const std::set<T>& set1, const T& item)</span> -<span class="lineNum"> 80 </span> : { -<span class="lineNum"> 81 </span><span class="lineCov"> 4 : return set1.find(item) != set1.end();</span> -<span class="lineNum"> 82 </span> : } -<span class="lineNum"> 83 </span> : -<span class="lineNum"> 84 </span> : } -<span class="lineNum"> 85 </span> : } -<span class="lineNum"> 86 </span> : -<span class="lineNum"> 87 </span> : // vim:set ts=4 sw=4: -<span class="lineNum"> 88 </span> : #endif -</pre> - </td> - </tr> - </table> - <br> - - <table width="100%" border=0 cellspacing=0 cellpadding=0> - <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr> - <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr> - </table> - <br> - -</body> -</html> |