aboutsummaryrefslogtreecommitdiff
path: root/brep/module.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-10-28 17:56:30 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-11-11 17:46:11 +0200
commit1ce84922e3008cad6cf1b9056b705f2642bd3772 (patch)
tree0dde62654e56c8e94ebf0cef83181ea9ddc99faf /brep/module.cxx
parent4993f11bf464c9aee0e3fd5965f4a8258cbe8b30 (diff)
WEB pages re-styling
Diffstat (limited to 'brep/module.cxx')
-rw-r--r--brep/module.cxx28
1 files changed, 17 insertions, 11 deletions
diff --git a/brep/module.cxx b/brep/module.cxx
index 62c70c9..fa7f479 100644
--- a/brep/module.cxx
+++ b/brep/module.cxx
@@ -89,7 +89,9 @@ namespace brep
for (const auto& nv: options)
{
argv.push_back (nv.name.c_str ());
- argv.push_back (nv.value.c_str ());
+
+ if (nv.value)
+ argv.push_back (nv.value->c_str ());
}
int argc (argv.size ());
@@ -252,7 +254,7 @@ namespace brep
peek ()
{
if (i_ != name_values_.end ())
- return name_ ? i_->name.c_str () : i_->value.c_str ();
+ return name_ ? i_->name.c_str () : i_->value->c_str ();
else
throw eos_reached ();
}
@@ -262,12 +264,8 @@ namespace brep
{
if (i_ != name_values_.end ())
{
- const char* r (name_ ? i_->name.c_str () : i_->value.c_str ());
-
- if (!name_)
- ++i_;
-
- name_ = !name_;
+ const char* r (name_ ? i_->name.c_str () : i_->value->c_str ());
+ skip ();
return r;
}
else
@@ -279,10 +277,18 @@ namespace brep
{
if (i_ != name_values_.end ())
{
- if (!name_)
+ if (name_)
+ {
+ if (i_->value)
+ name_ = false;
+ else
+ ++i_;
+ }
+ else
+ {
++i_;
-
- name_ = !name_;
+ name_ = true;
+ }
}
else
throw eos_reached ();