diff options
Diffstat (limited to 'base')
-rw-r--r-- | base/base.gyp | 1 | ||||
-rw-r--r-- | base/nullable_string16.h | 28 |
2 files changed, 29 insertions, 0 deletions
diff --git a/base/base.gyp b/base/base.gyp index bf6d9d2..3e0503e 100644 --- a/base/base.gyp +++ b/base/base.gyp @@ -202,6 +202,7 @@ 'non_thread_safe.h', 'nss_init.cc', 'nss_init.h', + 'nullable_string16.h', 'object_watcher.cc', 'object_watcher.h', 'observer_list.h', diff --git a/base/nullable_string16.h b/base/nullable_string16.h new file mode 100644 index 0000000..6f69aa5 --- /dev/null +++ b/base/nullable_string16.h @@ -0,0 +1,28 @@ +// Copyright (c) 2009 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. + +#ifndef BASE_NULLABLE_STRING16_H_ +#define BASE_NULLABLE_STRING16_H_ + +#include "base/string16.h" + +// This class is a simple wrapper for string16 which also contains a null +// state. This should be used only where the difference between null and +// empty is meaningful. +class NullableString16 { + public: + NullableString16() : is_null_(false) { } + NullableString16(const string16& string, bool is_null) + : string_(string), is_null_(is_null) { + } + + const string16& string() const { return string_; } + bool is_null() const { return is_null_; } + + private: + string16 string_; + bool is_null_; +}; + +#endif // BASE_NULLABLE_STRING16_H_ |