summaryrefslogtreecommitdiffstats
path: root/include/plist/Integer.h
diff options
context:
space:
mode:
authorGravatar Nikias Bassen2023-01-16 04:25:52 +0100
committerGravatar Nikias Bassen2023-01-16 04:25:52 +0100
commitd886885b0ec2506fa2caf0986a3d0e496fea91c2 (patch)
tree58bc4bcd1963ea885abd60a65bf87a2685526714 /include/plist/Integer.h
parent47a7fbe438ee7350a2b151e007f07043ef596775 (diff)
downloadlibplist-d886885b0ec2506fa2caf0986a3d0e496fea91c2.tar.gz
libplist-d886885b0ec2506fa2caf0986a3d0e496fea91c2.tar.bz2
Rename PLIST_UINT to PLIST_INT and add plist_new_int() and plist_get_int_val()
This properly supports getting and setting signed or unsigned integer values. Also, a new helper function plist_int_val_is_negative() was added to determine if a given #PLIST_INT node has a negative value or not. The old type PLIST_UINT is defined as a macro with the value of PLIST_INT for backwards compatibility. This commit also adds int vs. uint support to the C++ interface, and the python bindings in a hopefully useful way.
Diffstat (limited to 'include/plist/Integer.h')
-rw-r--r--include/plist/Integer.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/plist/Integer.h b/include/plist/Integer.h
index bdabc6f..1a4d980 100644
--- a/include/plist/Integer.h
+++ b/include/plist/Integer.h
@@ -35,12 +35,18 @@ public :
Integer(const Integer& i);
Integer& operator=(const Integer& i);
Integer(uint64_t i);
+ Integer(int64_t i);
virtual ~Integer();
Node* Clone() const;
+ void SetValue(int64_t i);
void SetValue(uint64_t i);
- uint64_t GetValue() const;
+ void SetUnsignedValue(uint64_t i);
+ int64_t GetValue() const;
+ uint64_t GetUnsignedValue() const;
+
+ bool isNegative() const;
};
};