Intersection and Union of Class Expressions

struct CowlNAryBool : public CowlClsExp

Represents ObjectIntersectionOf and ObjectUnionOf in the OWL 2 specification.

Public Static Functions

static inline CowlNAryBool *cowl_nary_bool(CowlNAryType type, CowlVector *operands)

Returns a retained N-ary boolean class expression.

Parameters
  • type – N-ary class expression type.

  • operands – The operands.

Returns

Retained expression, or NULL on error.

static inline CowlNAryBool *cowl_nary_bool_retain(CowlNAryBool *exp)

Retains the specified N-ary boolean class expression.

Parameters

exp – The expression.

Returns

Retained expression.

static inline void cowl_nary_bool_release(CowlNAryBool *exp)

Releases the specified N-ary boolean class expression.

Parameters

exp – The expression.

static inline CowlNAryType cowl_nary_bool_get_type(CowlNAryBool *exp)

Gets the type of the specified N-ary boolean class expression.

Parameters

exp – The expression.

Returns

The type.

static inline CowlVector *cowl_nary_bool_get_operands(CowlNAryBool *exp)

Gets the operands of the specified N-ary boolean class expression.

Parameters

exp – The expression.

Returns

The operands.

static inline CowlString *cowl_nary_bool_to_string(CowlNAryBool *exp)

Returns the string representation of the specified N-ary boolean class expression.

Note

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

Parameters

exp – The expression.

Returns

String representation, or NULL on error.

static inline bool cowl_nary_bool_equals(CowlNAryBool *lhs, CowlNAryBool *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_nary_bool_hash(CowlNAryBool *exp)

Hash function.

Parameters

exp – The expression.

Returns

The hash value.

static inline bool cowl_nary_bool_iterate_primitives(CowlNAryBool *exp, CowlPrimitiveFlags flags, CowlIterator *iter)

Iterates over the primitives referenced by the specified N-ary boolean class expression.

Parameters
  • exp – The expression.

  • flags – Iteration flags.

  • iter – The iterator.

Returns

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

enum CowlNAryType

Represents the type of CowlNAryBool and CowlNAryData.

Values:

enumerator COWL_NT_INTERSECT

Intersection.

enumerator COWL_NT_UNION

Union.

enumerator COWL_NT_COUNT

Number of enum values.

enumerator COWL_NT_FIRST

First enum value.