/*
gecode-string: bounded-length string constraints for Gecode
url: github.com/jossco/gecode-string
author: Joseph D. Scott, Uppsala University
========
file: ./src/open.cpp
version: 0.2.1
date: Wed Dec 3 17:58:46 CET 2014
========
This file originally based on code generated by the indexical compiler,
written by JN Monette @ Uppsala University.
*/
#include "gecode/driver.hh"
#include "gecode/int.hh"
#include "gecode/iter.hh"
#include "open.hh"
#include
using namespace Gecode;
namespace Gecode { namespace Open {
Iter::Ranges::Singleton Open::OpenString::PadRange(padchar,padchar);
Iter::Ranges::Singleton Open::OpenString::Symbols(0,96);
// Union of integer range and the padding character
// (for initializing domains of "character" variables)
IntSet Open::OpenString::paddedIntSet(int n, int m) {
int ranges[2][2] = {{padchar, padchar}, {n,m}};
return IntSet(ranges,2);
}
void Open::OpenString::print(std::ostream& os, IntVarArray X, IntVar Xn)
{
os