/* PSPP - a program for statistical analysis.
- Copyright (C) 2006, 2009 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2009, 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include <config.h>
#endif
-#include <libpspp/llx.h>
-#include "compiler.h"
+#include "libpspp/llx.h"
+#include "libpspp/compiler.h"
#include <assert.h>
#include <stdlib.h>
return count;
}
+/* Returns the first node in R0...R1 that has data TARGET.
+ Returns NULL if no node in R0...R1 equals TARGET. */
+struct llx *
+llx_find (const struct llx *r0, const struct llx *r1, const void *target)
+{
+ const struct llx *x;
+
+ for (x = r0; x != r1; x = llx_next (x))
+ if (llx_data (x) == target)
+ return CONST_CAST (struct llx *, x);
+
+ return NULL;
+}
+
/* Returns the first node in R0...R1 that equals TARGET
according to COMPARE given auxiliary data AUX.
Returns R1 if no node in R0...R1 equals TARGET. */