001 002 package lrs.lazyLRSEvaluators; 003 004 import lrs.*; 005 //import lrs.visitor.*; 006 import logic.*; 007 008 public class LazySieveEval extends ALazyEval 009 { 010 /** @SBGen Variable (,helper,,64) */ 011 LazyFilterEval lazyFilterEval; 012 int value = 2; 013 014 015 public LazySieveEval() 016 { 017 LRStruct src = (new LazyIncEval (value, 1)).makeLRS (); // src is all integers from 2. 018 lazyFilterEval = new LazyFilterEval (new ModPredStrategy(value), src); 019 } 020 021 public LRStruct nextLRS() 022 { 023 value = (Integer)lazyFilterEval.nextLRS().getFirst(); 024 lazyFilterEval = new LazyFilterEval (new ModPredStrategy(value), lazyFilterEval.makeLRS ()); 025 return makeLRS (); 026 } 027 028 public LRStruct makeLRS() 029 { 030 return makeLazyLRS(value); 031 } 032 } 033