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

Class Block

source code


Block is a set of Generators in a specific order who's values are combined into a block of data. The BlockSize generator can be used to output the size of the block or other generators.

Example:

>>> gen = Block([
...  Static('Hello'),
...  Static(' '),
...  Static('World')
...  ])
>>> print gen.getValue()
Hello World

Notes:

See Also: MultiBlock, Block2, Block3, BlockSize, MultiBlockCount

Instance Methods [hide private]
 
__init__(self, generators=None)
Base constructor, please call me!
source code
 
next(self)
Note: We arn't going to next on any of the sub generators.
source code
 
reset(self)
Even though we don't propogate .next calls we should reset things.
source code
string
getValue(self)
Return data, passed through a transformer if set.
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, identity, setGroup, setName, setTransformer

Method Details [hide private]

__init__(self, generators=None)
(Constructor)

source code 

Base constructor, please call me!

Parameters:
  • generators (List) - List of generators
  • alignment (Integer) - How to align block. Just like with a struct.
Overrides: generator.Generator.__init__

next(self)

source code 

Note: We arn't going to next on any of the sub generators. This is left to the group or whatever todo.

Overrides: generator.Generator.next

reset(self)

source code 

Even though we don't propogate .next calls we should reset things.

Overrides: generator.Generator.reset

getValue(self)

source code 

Return data, passed through a transformer if set.

Returns: string
Returns generated data
Overrides: generator.Generator.getValue
(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)