1 18 19 package ticket20; 20 21 import java.util.Collection ; 22 import java.util.LinkedList ; 23 24 import org.junit.Test; 25 import org.sablecc.sablecc.alphabet.Alphabet; 26 import org.sablecc.sablecc.alphabet.Interval; 27 import org.sablecc.sablecc.alphabet.Realms; 28 import org.sablecc.sablecc.alphabet.Symbol; 29 30 public class MergeBug { 31 32 @Test 33 public void bug() { 34 35 Collection <Interval<Integer >> intervalsInt = new LinkedList <Interval<Integer >>(); 36 37 Alphabet<Integer > firstPartAlphabet; 38 Alphabet<Integer > secondPartAlphabet; 39 40 intervalsInt.add(Realms.getInteger().createInterval(0, 5)); 41 intervalsInt.add(Realms.getInteger().createInterval(10, 15)); 42 intervalsInt.add(Realms.getInteger().createInterval(20, 25)); 43 firstPartAlphabet = new Alphabet<Integer >(new Symbol<Integer >( 44 intervalsInt)); 45 46 intervalsInt.clear(); 47 intervalsInt.add(Realms.getInteger().createInterval(30, 35)); 48 intervalsInt.add(Realms.getInteger().createInterval(40, 45)); 49 intervalsInt.add(Realms.getInteger().createInterval(50, 55)); 50 secondPartAlphabet = new Alphabet<Integer >(new Symbol<Integer >( 51 intervalsInt)); 52 53 firstPartAlphabet.mergeWith(secondPartAlphabet); 55 } 56 } 57 | Popular Tags |