Package PyFoam :: Package ThirdParty :: Package ply :: Module yacc
[hide private]
[frames] | no frames]

Module yacc

source code

Classes [hide private]
  YaccError
  object
  YaccSymbol
  YaccProduction
  Parser
  Production
  MiniProduction

Functions [hide private]
  validate_file(filename)
  validate_dict(d)
  initialize_vars()
  add_production(f, file, line, prodname, syms)
  add_function(f)
  compute_reachable()
Find each symbol that can be reached from the start symbol.
  mark_reachable_from(s, Reachable)
Mark all symbols that are reachable from symbol s.
  compute_terminates()
Raise an error for any symbols that don't terminate.
  verify_productions(cycle_check=1)
  build_lritems()
  add_precedence(plist)
  augment_grammar(start=None)
  first(beta)
  compute_follow(start=None)
  compute_first1()
  lr_init_vars()
  lr0_closure(I)
  lr0_goto(I, x)
  lr0_items()
  compute_nullable_nonterminals()
  find_nonterminal_transitions(C)
  dr_relation(C, trans, nullable)
  reads_relation(C, trans, empty)
  compute_lookback_includes(C, trans, nullable)
  digraph(X, R, FP)
  traverse(x, N, stack, F, X, R, FP)
  compute_read_sets(C, ntrans, nullable)
  compute_follow_sets(ntrans, readsets, inclsets)
  add_lookaheads(lookbacks, followset)
  add_lalr_lookaheads(C)
  lr_parse_table(method)
  lr_write_tables(modulename=tab_module, outputdir='')
  lr_read_tables(module=tab_module, optimize=0)
  yacc(method=default_lr, debug=yaccdebug, module=None, tabmodule=tab_module, start=None, check_recursion=1, optimize=0, write_tables=1, debugfile=debug_file, outputdir='')
  yacc_cleanup()
  parse(*args, **kwargs)

Variables [hide private]
  __version__ = '2.3'
  yaccdebug = 1
  debug_file = 'parser.out'
  tab_module = 'parsetab'
  default_lr = 'LALR'
  error_count = 3
  _INSTANCETYPE = (<type 'instance'>, <type 'object'>)
  _is_identifier = <_sre.SRE_Pattern object at 0x2a99cd6450>
  _add_count = 0
  _lr0_cidhash = {}

Imports: re, types, sys, cStringIO, md5, os


Function Details [hide private]

validate_file(filename)

source code 
None

validate_dict(d)

source code 
None

initialize_vars()

source code 
None

add_production(f, file, line, prodname, syms)

source code 
None

add_function(f)

source code 
None

compute_reachable()

source code 
Find each symbol that can be reached from the start symbol. Print a warning for any nonterminals that can't be reached. (Unused terminals have already had their warning.)

mark_reachable_from(s, Reachable)

source code 
Mark all symbols that are reachable from symbol s.

compute_terminates()

source code 
Raise an error for any symbols that don't terminate.

verify_productions(cycle_check=1)

source code 
None

build_lritems()

source code 
None

add_precedence(plist)

source code 
None

augment_grammar(start=None)

source code 
None

first(beta)

source code 
None

compute_follow(start=None)

source code 
None

compute_first1()

source code 
None

lr_init_vars()

source code 
None

lr0_closure(I)

source code 
None

lr0_goto(I, x)

source code 
None

lr0_items()

source code 
None

compute_nullable_nonterminals()

source code 
None

find_nonterminal_transitions(C)

source code 
None

dr_relation(C, trans, nullable)

source code 
None

reads_relation(C, trans, empty)

source code 
None

compute_lookback_includes(C, trans, nullable)

source code 
None

digraph(X, R, FP)

source code 
None

traverse(x, N, stack, F, X, R, FP)

source code 
None

compute_read_sets(C, ntrans, nullable)

source code 
None

compute_follow_sets(ntrans, readsets, inclsets)

source code 
None

add_lookaheads(lookbacks, followset)

source code 
None

add_lalr_lookaheads(C)

source code 
None

lr_parse_table(method)

source code 
None

lr_write_tables(modulename=tab_module, outputdir='')

source code 
None

lr_read_tables(module=tab_module, optimize=0)

source code 
None

yacc(method=default_lr, debug=yaccdebug, module=None, tabmodule=tab_module, start=None, check_recursion=1, optimize=0, write_tables=1, debugfile=debug_file, outputdir='')

source code 
None

yacc_cleanup()

source code 
None

parse(*args, **kwargs)

source code 
None

Variables Details [hide private]

__version__

None
Value:
'2.3'                                                                  
      

yaccdebug

None
Value:
1                                                                     
      

debug_file

None
Value:
'parser.out'                                                           
      

tab_module

None
Value:
'parsetab'                                                             
      

default_lr

None
Value:
'LALR'                                                                 
      

error_count

None
Value:
3                                                                     
      

_INSTANCETYPE

None
Value:
(<type 'instance'>, <type 'object'>)                                   
      

_is_identifier

None
Value:
^[a-zA-Z0-9_-]+$                                                       
      

_add_count

None
Value:
0                                                                     
      

_lr0_cidhash

None
Value:
{}