MCPcopy Create free account
hub / github.com/BirolLab/abyss / parse

Function parse

Assembly/Options.cc:215–373  ·  view source on GitHub ↗

Parse the specified command line. */

Source from the content-addressed store, hash-verified

213
214/** Parse the specified command line. */
215void parse(int argc, char* const* argv)
216{
217 ostringstream sargv;
218 if (opt::rank <= 0) {
219 char* const* last = argv + argc - 1;
220 copy(argv, last, ostream_iterator<const char *>(sargv, " "));
221 sargv << *last;
222 }
223
224 opt::assemblyCmd = sargv.str();
225 opt::metaVars.resize(3);
226 bool die = false;
227 for (int c; (c = getopt_long(argc, argv,
228 shortopts, longopts, NULL)) != -1;) {
229 istringstream arg(optarg != NULL ? optarg : "");
230 switch (c) {
231 case '?':
232 die = true;
233 break;
234 case 'b':
235 arg >> bubbleLen;
236 break;
237 case 'c':
238 arg >> coverage;
239 break;
240 case 'k':
241 arg >> kmerSize;
242 k = kmerSize;
243 kMin = kmerSize;
244 switch (arg.get()) {
245 case ',':
246 arg >> kMax;
247 kStep = kMax - kMin;
248 break;
249 case '-':
250 arg >> kMax;
251 if (arg.get() == ':')
252 arg >> kStep;
253 break;
254 default:
255 kMax = kmerSize;
256 }
257 assert(kMin <= kMax);
258 break;
259 case 'K':
260 arg >> singleKmerSize;
261 break;
262 case COVERAGE_HIST:
263 getline(arg, coverageHistPath);
264 break;
265 case 'm':
266 maskCov = true;
267 break;
268 case 'o':
269 getline(arg, contigsPath);
270 break;
271 case 'e':
272 arg >> erode;

Callers 2

mainFunction · 0.85
mainFunction · 0.85

Calls 6

resizeMethod · 0.80
strMethod · 0.45
eofMethod · 0.45
emptyMethod · 0.45
clearMethod · 0.45
beginMethod · 0.45

Tested by

no test coverage detected