summaryrefslogtreecommitdiffstats
path: root/src/misc/vec
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc/vec')
-rw-r--r--src/misc/vec/vecInt.h20
-rw-r--r--src/misc/vec/vecStr.h20
2 files changed, 40 insertions, 0 deletions
diff --git a/src/misc/vec/vecInt.h b/src/misc/vec/vecInt.h
index be54e583..39ab2623 100644
--- a/src/misc/vec/vecInt.h
+++ b/src/misc/vec/vecInt.h
@@ -1259,6 +1259,26 @@ static inline void Vec_IntPrint( Vec_Int_t * vVec )
printf( " }\n" );
}
+/**Function*************************************************************
+
+ Synopsis []
+
+ Description []
+
+ SideEffects []
+
+ SeeAlso []
+
+***********************************************************************/
+static inline int Vec_IntCompareVec( Vec_Int_t * p1, Vec_Int_t * p2 )
+{
+ if ( p1 == NULL || p2 == NULL )
+ return (p1 != NULL) - (p2 != NULL);
+ if ( Vec_IntSize(p1) != Vec_IntSize(p2) )
+ return Vec_IntSize(p1) - Vec_IntSize(p2);
+ return memcmp( Vec_IntArray(p1), Vec_IntArray(p2), sizeof(int)*Vec_IntSize(p1) );
+}
+
ABC_NAMESPACE_HEADER_END
diff --git a/src/misc/vec/vecStr.h b/src/misc/vec/vecStr.h
index cec3e7e1..c794dc2f 100644
--- a/src/misc/vec/vecStr.h
+++ b/src/misc/vec/vecStr.h
@@ -650,6 +650,26 @@ static inline void Vec_StrSort( Vec_Str_t * p, int fReverse )
(int (*)(const void *, const void *)) Vec_StrSortCompare1 );
}
+/**Function*************************************************************
+
+ Synopsis []
+
+ Description []
+
+ SideEffects []
+
+ SeeAlso []
+
+***********************************************************************/
+static inline int Vec_StrCompareVec( Vec_Str_t * p1, Vec_Str_t * p2 )
+{
+ if ( p1 == NULL || p2 == NULL )
+ return (p1 != NULL) - (p2 != NULL);
+ if ( Vec_StrSize(p1) != Vec_StrSize(p2) )
+ return Vec_StrSize(p1) - Vec_StrSize(p2);
+ return memcmp( Vec_StrArray(p1), Vec_StrArray(p2), Vec_StrSize(p1) );
+}
+
ABC_NAMESPACE_HEADER_END