# ifndef QUALLIST_H
# define QUALLIST_H
-abst_typedef /*@null@*/ struct _qualList
+abst_typedef /*@null@*/ struct
{
int nelements;
int free;
/*@reldef@*/ /*@relnull@*/ qual *elements;
} *qualList ;
-extern /*@falsenull@*/ bool qualList_isDefined (qualList p_s);
-extern /*@unused@*/ /*@truenull@*/ bool qualList_isUndefined (qualList p_s);
+extern /*@falsewhennull@*/ bool qualList_isDefined (qualList p_s);
+extern /*@unused@*/ /*@nullwhentrue@*/ bool qualList_isUndefined (qualList p_s);
/*@constant null qualList qualList_undefined; @*/
# define qualList_undefined ((qualList) NULL)
# define qualList_isEmpty(s) (qualList_size(s) == 0)
extern qualList qualList_new (void) /*@*/ ;
+
+extern qualList qualList_single (qual p_el) /*@*/ ;
+
extern qualList qualList_add (/*@returned@*/ qualList p_s, qual p_el)
/*@modifies p_s@*/;
extern bool qualList_hasAliasQualifier (qualList p_s);
extern bool qualList_hasExposureQualifier (qualList p_s);
+/* start modifications */
+extern bool qualList_hasNullTerminatedQualifier(qualList p_s);
+
+extern bool qualList_hasBufQualifiers(qualList p_s);
+
+# define qualList_hasBufQualifiers(p_s) \
+ (qualList_hasNullTerminatedQualifier(p_s))
+
+/* end modification/s */
+
# else
# error "Multiple include"
# endif