6 Order *allocOrder(OrderType type, Set *set) {
7 Order *This = (Order *)ourmalloc(sizeof(Order));
9 initDefVectorBooleanOrder(&This->constraints);
11 initOrderEncoding(&This->order, This);
12 This->orderPairTable = NULL;
16 void initializeOrderHashTable(Order *This) {
17 This->orderPairTable = allocHashTableOrderPair(HT_INITIAL_CAPACITY, HT_DEFAULT_FACTOR);
20 void addOrderConstraint(Order *This, BooleanOrder *constraint) {
21 pushVectorBooleanOrder( &This->constraints, constraint);
24 void setOrderEncodingType(Order *This, OrderEncodingType type) {
25 This->order.type = type;
28 void deleteOrder(Order *This) {
29 deleteVectorArrayBooleanOrder(&This->constraints);
30 deleteOrderEncoding(&This->order);
31 if (This->orderPairTable != NULL) {
32 resetAndDeleteHashTableOrderPair(This->orderPairTable);
33 deleteHashTableOrderPair(This->orderPairTable);