summaryrefslogtreecommitdiffstats
path: root/dbus/values_util.h
diff options
context:
space:
mode:
Diffstat (limited to 'dbus/values_util.h')
-rw-r--r--dbus/values_util.h26
1 files changed, 24 insertions, 2 deletions
diff --git a/dbus/values_util.h b/dbus/values_util.h
index e34c7a0..9ece9b9 100644
--- a/dbus/values_util.h
+++ b/dbus/values_util.h
@@ -22,15 +22,37 @@ class MessageWriter;
// double. Non-string diciontary keys are converted to strings.
CHROME_DBUS_EXPORT base::Value* PopDataAsValue(MessageReader* reader);
-// Appends a basic type value to |writer|.
+// Appends a basic type value to |writer|. Basic types are BOOLEAN, INTEGER,
+// DOUBLE, and STRING. Use this function for values that are known to be basic
+// types and to handle basic type members of collections that should not
+// have type "a{sv}" or "av". Otherwise, use AppendValueData.
CHROME_DBUS_EXPORT void AppendBasicTypeValueData(MessageWriter* writer,
const base::Value& value);
-// Appends a basic type value to |writer| as a variant.
+// Appends a basic type value to |writer| as a variant. Basic types are BOOLEAN,
+// INTEGER, DOUBLE, and STRING. Use this function for values that are known to
+// be basic types and to handle basic type members of collections that should
+// not have type "a{sv}" or "av". Otherwise, use AppendValueDataAsVariant.
CHROME_DBUS_EXPORT void AppendBasicTypeValueDataAsVariant(
MessageWriter* writer,
const base::Value& value);
+// Appends a value to |writer|. Value can be a basic type, as well as a
+// collection type, such as dictionary or list. Collections will be recursively
+// written as variant containers, i.e. dictionaries will be written with type
+// a{sv} and lists with type av. Any sub-dictionaries or sub-lists will also
+// have these types.
+CHROME_DBUS_EXPORT void AppendValueData(MessageWriter* writer,
+ const base::Value& value);
+
+// Appends a value to |writer| as a variant. Value can be a basic type, as well
+// as a collection type, such as dictionary or list. Collections will be
+// recursively written as variant containers, i.e. dictionaries will be written
+// with type a{sv} and lists with type av. Any sub-dictionaries or sub-lists
+// will also have these types.
+CHROME_DBUS_EXPORT void AppendValueDataAsVariant(MessageWriter* writer,
+ const base::Value& value);
+
} // namespace dbus
#endif // DBUS_VALUES_UTIL_H_