All except `GetAsDictionary()`. Please use new shiny methods instead.
https://chromium.googlesource.com/chromium/src/+/master/base/values.h
atom/common/native_mate_converters/v8_value_converter.cc
public:
  
  class Level {
   public:
    explicit Level(FromV8ValueState* state) : state_(state) {
      state_->max_recursion_depth_--;
    }
    ~Level() { state_->max_recursion_depth_++; }
   private:
    FromV8ValueState* state_;
  };
  FromV8ValueState() : max_recursion_depth_(kMaxRecursionDepth) {}
  
  
  
  
  
  
  
  bool AddToUniquenessCheck(v8::Local<v8::Object> handle) {
    int hash;
    auto iter = GetIteratorInMap(handle, &hash);
    if (iter != unique_map_.end())
      return false;
    unique_map_.insert(std::make_pair(hash, handle));
    return true;
  }
  bool RemoveFromUniquenessCheck(v8::Local<v8::Object> handle) {