void do_string_value(const char_type* p, size_t length, const basic_parsing_context<char_type>&) override
 {
     stack_[top_].value_ = JsonT(p,length,sa_);
     if (++top_ >= stack_.size())
     {
         stack_.resize(top_*2);
     }
 }
 explicit json_array(size_t n, const Alloc& allocator = Alloc())
     : elements_(n,JsonT(),allocator)
 {
 }