Ejemplo n.º 1
0
	def next(self):
		self._roundCount+=1
		self._steps+=1
		if self._maxSteps != -1 and self._steps > self._maxSteps:
			raise generator.GeneratorCompleted("Peach.repeater.RepeaterOverflow")
		if self._roundCount == self._offset*2:
			if self._baseLength+self._offset == self._base**self._lastExponent:
				raise generator.GeneratorCompleted("Peach.repeater.RepeaterOverflow")
			self._roundCount = 0
			if self._actualExponent < 10:
				self._actualExponent += 1
			else:
				self._mul += 1
Ejemplo n.º 2
0
    def next(self):
        self._roundCount += 1

        if self._currentValue is None:
            self._currentValue = self._value
        else:
            self._currentValue += self._incrementor

        if self._maxValue:
            if self._currentValue > self._maxValue:
                raise generator.GeneratorCompleted('Generators.Incrementor: maxValue')
        if self._maxIterations:
            if self._roundCount > self._maxIterations:
                raise generator.GeneratorCompleted('Generators.Incrementor: maxIterations')
Ejemplo n.º 3
0
	def next(self):
		try:
			self._groupList[self._curPos].next()
		except group.GroupCompleted:
			#print "GeneratorList2.next(): Next pos [%d]" % self._curPos
			self._curPos += 1
		
		if self._curPos >= len(self._list):
			self._curPos -= 1
			raise generator.GeneratorCompleted("Peach.dictionary.GeneratorList2")
Ejemplo n.º 4
0
	def next(self):
		exit = 0
		for i in self._generators:
			try:
				i.next()
				exit = 0
			except:
				exit = 1
		if exit:
			raise generator.GeneratorCompleted("Block2")
Ejemplo n.º 5
0
    def next(self):
        try:
            self._list[self._curPos].next()
        except generator.GeneratorCompleted:
            #print "Peach.dictionary.GeneratorList2.next(): caught GeneratorCompleted"
            self._curPos += 1

        if self._curPos >= len(self._list):
            self._curPos -= 1
            #print "Peach.dictionary.GeneratorList2.next(): throwing complete exceptions"
            raise generator.GeneratorCompleted("Peach.dictionary.GeneratorList")
    def next(self):

        if self._completed:
            raise generator.GeneratorCompleted(
                "Peach.dictionary.GeneratorListGroupMaster")

        moveNext = True

        # next our current generator
        try:
            self._groupList[self._curPos].next()
            moveNext = False
        except group.GroupCompleted:
            pass

        # next the generator for each of our slaves
        for slave in self._slaves:
            try:
                slave.slaveNext()
                moveNext = False
            except group.GroupCompleted:
                pass

        if moveNext:
            print "GeneratorListGroupMaster.next(): Next pos [%d]" % self._curPos

            if (self._curPos + 1) >= len(self._list):
                self._completed = True

                # Let the slaves know we are done
                for slave in self._slaves:
                    slave.slaveCompleted()

                raise generator.GeneratorCompleted(
                    "Peach.dictionary.GeneratorListGroupMaster")

            # Move us and everyone else to next position
            self._curPos += 1
            for slave in self._slaves:
                slave.slaveNextPosition()
Ejemplo n.º 7
0
    def next(self):
        if self._fd is None:
            self._fd = open(self._fileName, 'rb')
            if self._fd is None:
                raise Exception('Unable to open', self._fileName)

        oldValue = self._currentValue
        self._currentValue = self._fd.readline()
        if self._currentValue is None or len(self._currentValue) == 0:
            self._currentValue = oldValue
            raise generator.GeneratorCompleted("Dictionary completed for file [%s]" % self._fileName)

        self._currentValue = self._currentValue.rstrip("\r\n")
Ejemplo n.º 8
0
    def next(self):

        if -1 < self._limit <= self._count:
            raise generator.GeneratorCompleted("BlockRandomizer hit its max!")

        done = True
        for gen in self._generators:
            try:
                gen.next()
                done = False
            except:
                pass

        if done:
            self._count += 1
            self.nextTest()
Ejemplo n.º 9
0
    def next(self):
        try:
            self._groupList[self._curPos].next()
        #print "GeneratorList2.next(): ..."
        except group.GroupCompleted:
            #print "GeneratorList2.next(): Next pos [%d]" % self._curPos
            #print "GeneratorList2.next(): %d items in our list" % len(self._list)
            self._curPos += 1
            if self._curPos < len(self._list):
                self._groupList[self._curPos].reset()
        #except:
        #	print "GeneratorList2.next(): Caught some other exception"

        if self._curPos >= len(self._list):
            self._curPos -= 1
            #print "%s: GeneratorList2.next() Completed" % name
            raise generator.GeneratorCompleted("Peach.dictionary.GeneratorList2")
Ejemplo n.º 10
0
 def next(self):
     raise generator.GeneratorCompleted("STATIC")
Ejemplo n.º 11
0
 def next(self):
     try:
         self._nextGroup.next()
     except group.GroupCompleted:
         raise generator.GeneratorCompleted("Block3")
 def next(self):
     if self._generator:
         self._generator.next()
     else:
         raise generator.GeneratorCompleted("PrintStdout")
Ejemplo n.º 13
0
 def next(self):
     self._curPos += 1
     if self._curPos >= len(self._list):
         self._curPos -= 1
         raise generator.GeneratorCompleted("List")
Ejemplo n.º 14
0
    def next(self):
        if (self._pos + 1) >= len(self._listOfLists):
            raise generator.GeneratorCompleted("ArrayList")

        self._pos += 1
        self._block = Block(self._listOfLists[self._pos])
Ejemplo n.º 15
0
 def next(self):
     self._size += 1
     if self._size > self._maxSize:
         raise generator.GeneratorCompleted("OverLongUtf8")
Ejemplo n.º 16
0
 def next(self):
     if self._completed:
         raise generator.GeneratorCompleted("Peach.dictionary.GeneratorListGroupSlave")
Ejemplo n.º 17
0
 def next(self):
     self._roundCount += 1
     if self._maxSteps != -1 and self._roundCount > self._maxSteps:
         self._roundCount -= 1
         raise generator.GeneratorCompleted("Peach.repeater.Repeater")
 def next(self):
     self._incrementor.next()
     raise generator.GeneratorCompleted('PerCallIncrementor')
Ejemplo n.º 19
0
 def next(self):
     self._position += 1
     if self._position >= len(self._strings):
         self._position -= 1
         raise generator.GeneratorCompleted(
             "Strings (%d, %d)" % (len(self._strings), self._position))