/* -*- c++ -*- */
#ifndef AKAXISO_EQUALS_H__
#define AKAXISO_EQUALS_H__

#include <akaxiso/classes/traits.h>

namespace aka2 {
  bool element_equals(const void *lhs, const void *rhs, const element_op& op);
  bool attributes_equals(const void *lhs, const void *rhs, const attribute_types *attrtypes);
  bool sequence_equals(const void *lhs, const void *rhs, const sequence_op &sop);
  bool choice_equals(const void *lhs, const void *rhs, const choice_op &cop);
  bool all_equals(const void *lhs, const void *rhs, const all_op &aop);
  bool simpletype_equals(const void *lhs, const void *rhs, const simpletype_op &sop);
  bool array_equals(const void *lhs, const void *rhs, const array_op &aop, const element_op &vop);
  bool simplecontent_equals(const void *lhs, const void *rhs, const simplecontent_op &sop);
  bool ptrmember_equals(const void *lhs, const void *rhs, const ptrmember_op &pop);
}

#endif
