summaryrefslogtreecommitdiff
path: root/libcult/cult/cli/arguments.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'libcult/cult/cli/arguments.hxx')
-rw-r--r--libcult/cult/cli/arguments.hxx85
1 files changed, 0 insertions, 85 deletions
diff --git a/libcult/cult/cli/arguments.hxx b/libcult/cult/cli/arguments.hxx
deleted file mode 100644
index 5381172..0000000
--- a/libcult/cult/cli/arguments.hxx
+++ /dev/null
@@ -1,85 +0,0 @@
-// file : cult/cli/arguments.hxx
-// author : Boris Kolpackov <boris@kolpackov.net>
-// copyright : Copyright (c) 2005-2010 Boris Kolpackov
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-#ifndef CULT_CLI_ARGUMENTS_HXX
-#define CULT_CLI_ARGUMENTS_HXX
-
-#include <cult/types.hxx>
-
-#include <cult/cli/exceptions.hxx>
-
-namespace Cult
-{
- namespace CLI
- {
- class Arguments: public NonCopyable
- {
- public:
- virtual
- ~Arguments ();
-
- public:
- class Bounds: public virtual Exception {};
-
- virtual Size
- size () const = 0;
-
- virtual Char const*
- operator[] (Index) const = 0;
-
- virtual Void
- erase (Index) = 0;
- };
-
- class BasicArguments: public Arguments
- {
- public:
- virtual
- ~BasicArguments ();
-
- BasicArguments (Int& argc, Char** argv);
-
- public:
- virtual Size
- size () const
- {
- return static_cast<Size> (argc_);
- }
-
- virtual Char const*
- operator[] (Index i) const
- {
- if (i >= size ())
- throw Bounds ();
-
- return argv_[i];
- }
-
- virtual Void
- erase (Index i)
- {
- if (i >= size ())
- throw Bounds ();
-
- for (++i; i < size (); ++i)
- {
- argv_[i - 1] = argv_[i];
- }
-
- --argc_;
-
- argv_[argc_] = 0;
- }
-
- private:
- Int& argc_;
- Char** argv_;
- };
- }
-}
-
-#include <cult/cli/arguments.ixx>
-
-#endif // CULT_CLI_ARGUMENTS_HXX