namespace ArduinoJson {
namespace Internals {

// A type that cannot be copied
class NonCopyable {
 protected:
  NonCopyable() {}

 private:
  // copy constructor is private
  NonCopyable(const NonCopyable&);

  // copy operator is private
  NonCopyable& operator=(const NonCopyable&);
};
}  // namespace Internals
}  // namespace ArduinoJson
