Complement of Class Expressions

struct CowlObjCompl : public CowlClsExp

Represents ObjectComplementOf in the OWL 2 specification.

Public Static Functions

static inline CowlObjCompl *cowl_obj_compl(CowlAnyClsExp *operand)

Returns a retained class expression complement.

Parameters

operand – The operand.

Returns

Retained class expression complement, or NULL on error.

static inline CowlObjCompl *cowl_obj_compl_retain(CowlObjCompl *exp)

Retains the specified class expression complement.

Parameters

exp – The complement.

Returns

Retained class expression complement.

static inline void cowl_obj_compl_release(CowlObjCompl *exp)

Releases the specified class expression complement.

Parameters

exp – The complement.

static inline CowlClsExp *cowl_obj_compl_get_operand(CowlObjCompl *exp)

Gets the operand of the specified class expression complement.

Parameters

exp – The complement.

Returns

The operand.

static inline CowlString *cowl_obj_compl_to_string(CowlObjCompl *exp)

Returns the string representation of the specified class expression complement.

Note

The returned string is retained, so you are responsible for releasing it.

Parameters

exp – The class expression complement.

Returns

String representation, or NULL on error.

static inline bool cowl_obj_compl_equals(CowlObjCompl *lhs, CowlObjCompl *rhs)

Equality function.

Parameters
  • lhs – LHS of the equality relation.

  • rhs – RHS of the equality relation.

Returns

True if the equality relation holds, false otherwise.

static inline ulib_uint cowl_obj_compl_hash(CowlObjCompl *exp)

Hash function.

Parameters

exp – The complement.

Returns

The hash value.

static inline bool cowl_obj_compl_iterate_primitives(CowlObjCompl *exp, CowlPrimitiveFlags flags, CowlIterator *iter)

Iterates over the primitives referenced by the specified class expression complement.

Parameters
  • exp – The complement.

  • flags – Iteration flags.

  • iter – The iterator.

Returns

True if the iteration was completed, false if it was stopped.