aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/lldb/include/lldb/Core/PropertiesBase.td
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm-project/lldb/include/lldb/Core/PropertiesBase.td')
-rw-r--r--contrib/llvm-project/lldb/include/lldb/Core/PropertiesBase.td49
1 files changed, 49 insertions, 0 deletions
diff --git a/contrib/llvm-project/lldb/include/lldb/Core/PropertiesBase.td b/contrib/llvm-project/lldb/include/lldb/Core/PropertiesBase.td
new file mode 100644
index 000000000000..be97d44ae8e4
--- /dev/null
+++ b/contrib/llvm-project/lldb/include/lldb/Core/PropertiesBase.td
@@ -0,0 +1,49 @@
+// Base class for all options.
+class Property<string name, string type> {
+ string Name = name;
+ string Type = type;
+ string Definition;
+}
+
+// Sets the description for the property that should be displayed to the user.
+class Desc<string description> {
+ string Description = description;
+}
+
+// Marks the property as global.
+class Global {
+ bit Global = 1;
+}
+
+class DefaultTrue {
+ int DefaultUnsignedValue = 1;
+ bit HasDefaultUnsignedValue = 1;
+}
+
+class DefaultFalse {
+ int DefaultUnsignedValue = 0;
+ bit HasDefaultUnsignedValue = 1;
+}
+
+// Gives the property a default string value.
+class DefaultStringValue<string value> {
+ string DefaultStringValue = value;
+ bit HasDefaultStringValue = 1;
+}
+
+// Gives the property a default enum value.
+class DefaultEnumValue<string value> {
+ string DefaultEnumValue = value;
+ bit HasDefaultEnumValue = 1;
+}
+
+// Gives the property a default string value.
+class DefaultUnsignedValue<int value> {
+ int DefaultUnsignedValue = value;
+ bit HasDefaultUnsignedValue = 1;
+}
+
+// Gives the property enum values.
+class EnumValues<string enum> {
+ string EnumValues = enum;
+}