5 Predicate* allocPredicate(CompOp op, Set ** domain, uint numDomain){
6 PredicateOperator* predicate = ourmalloc(sizeof(PredicateOperator));
7 GETPREDICATETYPE(predicate)=OPERATORPRED;
8 predicate->numDomains=numDomain;
9 predicate->domains = ourmalloc(numDomain * sizeof(Set *));
10 memcpy(predicate->domains, domain, numDomain * sizeof(Set *));
12 return &predicate->base;
15 void deletePredicate(Predicate* predicate){
16 switch(GETPREDICATETYPE(predicate)) {
18 PredicateOperator * operpred=(PredicateOperator *) predicate;
19 ourfree(operpred->domains);
27 //need to handle freeing array...