Peach :: Generators :: block :: MultiBlock :: Class MultiBlock
[hide private]

Class MultiBlock

source code


Specialized type of Block that will duplicate itself a certain/random number of times.


See Also: Block, MultiBlockCount

Instance Methods [hide private]
 
__init__(self, group, generators, minOccurs=1, maxOccurs=1, genOccurs=None)
Base constructor, please call me!
source code
 
setGenOccurs(self, genOccurs) source code
 
next(self)
Next value.
source code
 
reset(self)
Called to reset the generator to its initial state.
source code
string
getRawValue(self)
Return raw value w/o passing through transformer if set.
source code
number
getSize(self)
Size of generator after all transformations
source code
 
append(self, generator)
Append a generator to end of list.
source code
 
insert(self, pos, generator)
Insert generator into list
source code
 
remove(self, generator)
Remove a generator from list
source code
 
clear(self)
Clear list of generators.
source code
 
setGenerators(self, generators)
Set array of generators.
source code
 
__len__(self) source code
 
__getitem__(self, key) source code
 
__setitem__(self, key, value) source code
 
__delitem__(self, key) source code
Generator
__iter__(self)
Return iterator for Generator object.
source code
 
__contains__(self, item) source code

Inherited from generator.Generator: getGroup, getName, getTransformer, getValue, identity, setGroup, setName, setTransformer

Class Variables [hide private]
  _seed = 1192315309984
Method Details [hide private]

__init__(self, group, generators, minOccurs=1, maxOccurs=1, genOccurs=None)
(Constructor)

source code 

Base constructor, please call me!

Parameters:
  • generators (List) - List of Generator objects
  • minOccurs (Number) - Minimum number of times this block can occur, defaults to 1
  • maxOccurs (Number) - Maximum number of times this block can occur, defaults to 1
  • genOccurs (Generator) - [Optional] Generator that produces number of occurances
Overrides: generator.Generator.__init__

next(self)

source code 

Next value. OVERRIDE

From Python docs on next():

The intention of the protocol is that once an iterator's next() method raises StopIteration, it will continue to do so on subsequent calls. Implementations that do not obey this property are deemed broken. (This constraint was added in Python 2.3; in Python 2.2, various iterators are broken according to this rule.)

For Generators, please use the GeneratorCompleted exception instead of StopIteration (its a subclass).

Overrides: generator.Generator.next
(inherited documentation)

reset(self)

source code 

Called to reset the generator to its initial state. OVERRIDE

Overrides: generator.Generator.reset
(inherited documentation)

getRawValue(self)

source code 

Return raw value w/o passing through transformer if set. OVERRIDE

Returns: string
Data before transformations
Overrides: generator.Generator.getRawValue
(inherited documentation)

getSize(self)

source code 

Size of generator after all transformations

Returns: number
size of data generated

append(self, generator)

source code 

Append a generator to end of list.

Parameters:
  • generator (Generator) - Generator to append

insert(self, pos, generator)

source code 

Insert generator into list

Parameters:
  • generator (Generator) - Generator to insert

remove(self, generator)

source code 

Remove a generator from list

Parameters:
  • generator (Generator) - Generator to remove

setGenerators(self, generators)

source code 

Set array of generators.

Parameters:
  • generators (list) - list of Generator objects

__iter__(self)

source code 

Return iterator for Generator object. This is always the Generator object itself.

Returns: Generator
Returns iterator, this is always self.
Overrides: generator.Generator.__iter__
(inherited documentation)