21     const Value::ObjectValues::iterator& current)
 
   22     : current_(current), isNull_(false) {}
 
   38   if (isNull_ && other.isNull_) {
 
   48   for (Value::ObjectValues::iterator it = current_; it != other.current_;
 
   59   return current_ == other.current_;
 
   63   current_ = other.current_;
 
   64   isNull_ = other.isNull_;
 
   68   const Value::CZString czstring = (*current_).first;
 
   69   if (czstring.data()) {
 
   70     if (czstring.isStaticString())
 
   72     return Value(czstring.data(), czstring.data() + czstring.length());
 
   74   return Value(czstring.index());
 
   78   const Value::CZString czstring = (*current_).first;
 
   80     return czstring.index();
 
   94   const char* cname = (*current_).first.data();
 
   95   return cname ? cname : 
"";
 
   99   const char* cname = (*current_).first.data();
 
  104   *end = cname + (*current_).first.length();
 
  119     const Value::ObjectValues::iterator& current)
 
  120     : ValueIteratorBase(current) {}
 
  146   throwRuntimeError(
"ConstIterator to Iterator should never be allowed.");