text: // Copyright 2014 The Chromium Authors. All rights reserved.
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
  
  // This file has been auto-generated by code_generator_v8.py. DO NOT MODIFY!
  
  #ifndef IDBObjectStoreParameters_h
  #define IDBObjectStoreParameters_h
  
  #include "bindings/core/v8/Nullable.h"
  #include "bindings/modules/v8/UnionTypesModules.h"
  #include "modules/ModulesExport.h"
  #include "platform/heap/Handle.h"
  #include "wtf/Vector.h"
  #include "wtf/text/WTFString.h"
  
  namespace blink {
  
  class MODULES_EXPORT IDBObjectStoreParameters {
      ALLOW_ONLY_INLINE_ALLOCATION();
  public:
      IDBObjectStoreParameters();
  
      bool hasAutoIncrement() const { return !m_autoIncrement.isNull(); }
      bool autoIncrement() const { return m_autoIncrement.get(); }
      void setAutoIncrement(bool value) { m_autoIncrement = value; }
  
      bool hasKeyPath() const { return !m_keyPath.isNull(); }
      const StringOrStringSequence& keyPath() const { return m_keyPath; }
      void setKeyPath(const StringOrStringSequence& value) { m_keyPath = value; }
      void setKeyPathToNull() { m_keyPath = StringOrStringSequence(); }
  
      DECLARE_VIRTUAL_TRACE();
  
  private:
      Nullable<bool> m_autoIncrement;
      StringOrStringSequence m_keyPath;
  
      friend class V8IDBObjectStoreParameters;
  };
  
  } // namespace blink
  
  #endif // IDBObjectStoreParameters_h
  