Package Bio :: Package ECell :: Module ecell_format
[hide private]
[frames] | no frames]

Module ecell_format

source code

Martel based parser to read ECell formatted files.

This is a huge regular regular expression for ECell, built using
the 'regular expressiona on steroids' capabilities of Martel.

http://www.bioinformatics.org/ecell2/
Notes:
Just so I remember -- the new end of line syntax is:
  New regexp syntax - \R
     \R    means "
|
?"
     [\R]  means "[

]"

This helps us have endlines be consistent across platforms.

Variables [hide private]
  excluded_chars = ' \t\n\r'
  block_type = Group("block_type", Expression.NoCase(Str("Type")))
  header_line = Group("header_line", block_type+ ToEol())
  tab = Group("tab", Str('\t'))
  system_tag = Group("system_tag", Expression.NoCase(Str("system...
  reactor_tag = Group("reactor_tag", Expression.NoCase(Str("Reac...
  substance_tag = Group("substance_tag", Expression.NoCase(Str("...
  system_line = Group("system_line", system_tag+ ToEol())
  reactor_line = Group("reactor_line", reactor_tag+ ToEol())
  substance_line = Group("substance_line", substance_tag+ ToEol())
  continuation_line = Group("continuation_line", tab+ ToEol())
  include_line = Group("include_line", Str('include')+ ToEol())
  substance_multiline = Group("substance_multiline", substance_l...
  reactor_multiline = Group("reactor_multiline", reactor_line+ R...
  system_block = Group("system_block", Rep1(system_line))
  reactor_block = Group("reactor_block", Rep1(reactor_multiline))
  substance_block = Group("substance_block", Rep1(substance_mult...
  valid_block = Group("valid_block", header_line+ Alt(system_blo...
  valid_contents = Group("valid_contents", Rep1(valid_block))
  ecell_record = Group("valid_contents", Rep1(valid_block))
Variables Details [hide private]

system_tag

Value:
Group("system_tag", Expression.NoCase(Str("system")))

reactor_tag

Value:
Group("reactor_tag", Expression.NoCase(Str("Reactor")))

substance_tag

Value:
Group("substance_tag", Expression.NoCase(Str("Substance")))

substance_multiline

Value:
Group("substance_multiline", substance_line+ Rep(continuation_line))

reactor_multiline

Value:
Group("reactor_multiline", reactor_line+ Rep(continuation_line))

substance_block

Value:
Group("substance_block", Rep1(substance_multiline))

valid_block

Value:
Group("valid_block", header_line+ Alt(system_block, reactor_block, sub\
stance_block))