From 94eeeadeb5be3d9c9266bed5d3c32c6ff29695b4 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 20 Dec 2018 13:02:24 -0500 Subject: Add serd_node_compare() --- include/serd/serd.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'include') diff --git a/include/serd/serd.h b/include/serd/serd.h index 4067fa3f..5d0f7290 100644 --- a/include/serd/serd.h +++ b/include/serd/serd.h @@ -877,6 +877,21 @@ bool serd_node_equals(const SerdNode* SERD_NULLABLE a, const SerdNode* SERD_NULLABLE b); +/** + Compare two nodes. + + Returns less than, equal to, or greater than zero if `a` is less than, equal + to, or greater than `b`, respectively. NULL is treated as less than any + other node. + + Nodes are ordered first by type, then by string value, then by language or + datatype, if present. +*/ +SERD_PURE_API +int +serd_node_compare(const SerdNode* SERD_NONNULL a, + const SerdNode* SERD_NONNULL b); + /** @} @defgroup serd_nodes Nodes -- cgit v1.2.1