Added a function to clone an interaction.
[pspp-builds.git] / src / math / interaction.h
index bffe7518f5d6014d40d86de503554c8d313ebb92..23bd4f219eaf2813b06f240f91ca27e06ec61a50 100644 (file)
@@ -32,19 +32,21 @@ struct interaction
   const struct variable **vars;
 };
 
-
-
 struct interaction * interaction_create (const struct variable *);
+struct interaction * interaction_clone (const struct interaction *);
 void interaction_destroy (struct interaction *);
 void interaction_add_variable (struct interaction *, const struct variable *);
 void interaction_dump (const struct interaction *);
 void interaction_to_string (const struct interaction *iact, struct string *str);
+bool interaction_is_proper_subset (const struct interaction *x, const struct interaction *y);
+bool interaction_is_subset (const struct interaction *x, const struct interaction *y);
 
 
-union value;
+struct ccase;
+unsigned int interaction_case_hash (const struct interaction *, const struct ccase *, unsigned int base);
+bool interaction_case_equal (const struct interaction *, const struct ccase *, const struct ccase *);
+bool interaction_case_is_missing (const struct interaction *, const struct ccase *, enum mv_class);
+int interaction_case_cmp_3way (const struct interaction *, const struct ccase *, const struct ccase *);
 
-unsigned int interaction_value_hash (const struct interaction *, const union value *);
-bool interaction_value_equal (const struct interaction *, const union value *, const union value *);
-bool interaction_value_is_missing (const struct interaction *, const union value *, enum mv_class);
 
 #endif