value_builder.cc 906 B

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright 2013 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "extensions/common/value_builder.h"
  5. #include <utility>
  6. #include "base/json/json_writer.h"
  7. #include "base/strings/string_piece.h"
  8. namespace extensions {
  9. // DictionaryBuilder
  10. DictionaryBuilder::DictionaryBuilder() : dict_(new base::DictionaryValue) {}
  11. DictionaryBuilder::DictionaryBuilder(const base::DictionaryValue& init)
  12. : dict_(init.CreateDeepCopy()) {}
  13. DictionaryBuilder::~DictionaryBuilder() {}
  14. std::string DictionaryBuilder::ToJSON() const {
  15. std::string json;
  16. base::JSONWriter::WriteWithOptions(
  17. *dict_, base::JSONWriter::OPTIONS_PRETTY_PRINT, &json);
  18. return json;
  19. }
  20. // ListBuilder
  21. ListBuilder::ListBuilder() : list_(new base::ListValue) {}
  22. ListBuilder::~ListBuilder() {}
  23. } // namespace extensions