| 55 | } |
| 56 | |
| 57 | forceinline ExecStatus |
| 58 | SeqU::post(Home home, ViewArray<SetView> x, SetView y) { |
| 59 | switch (x.size()) { |
| 60 | case 0: |
| 61 | GECODE_ME_CHECK(y.cardMax(home, 0)); |
| 62 | return ES_OK; |
| 63 | case 1: |
| 64 | return Rel::Eq<SetView,SetView>::post(home, x[0], y); |
| 65 | default: |
| 66 | if (shared(x) || shared(x,y)) |
| 67 | return ES_FAILED; |
| 68 | (void) new (home) SeqU(home,x,y); |
| 69 | return ES_OK; |
| 70 | } |
| 71 | } |
| 72 | |
| 73 | }}} |
| 74 |