aboutsummaryrefslogtreecommitdiffstats
path: root/wlp_yacc.py
diff options
context:
space:
mode:
Diffstat (limited to 'wlp_yacc.py')
-rw-r--r--wlp_yacc.py108
1 files changed, 0 insertions, 108 deletions
diff --git a/wlp_yacc.py b/wlp_yacc.py
deleted file mode 100644
index 910ed1f..0000000
--- a/wlp_yacc.py
+++ /dev/null
@@ -1,108 +0,0 @@
-import logging
-
-import rply
-
-logging.basicConfig(format='%(levelname)s:%(funcName)s:%(message)s',
- level=logging.DEBUG)
-
-pg = rply.ParserGenerator(['OWNER', 'VAL', 'VAR'],
- cache_id='wlp_parser')
-
-"""
- $accept ::= block $end
-
- block ::= blockstatement
- | block blockstatement
-
- blockstatement ::= owner '{' commandline '}'
-
- commandline ::= command
- | commandline command
-
- command ::= varpart '=' valpart
-
- owner ::= OWNERID
-
- varpart ::= VARID
-
- valpart ::= VALID
-"""
-
-## Makes from this source
-##
-## <kame@innocent.com> {
-## From: = 'ME' Sender: = "Cosimo" Reply-to = "me"
-## }
-##
-## <alfarano@students.cs.unibo.it> {
-## From: = 'Cosimo Alfarano'
-## X-Firstname: = 'Cosimo'
-## }
-##
-## <kame@innocent.com> {
-## From: = 'kame@inwind.it'
-## Reply-to: = "KA"
-## Sender: = "Kalfa"
-## }
-##
-## this dictionary
-##
-## expected_dict = {'alfarano@students.cs.unibo.it': {
-## 'From:': 'Cosimo Alfarano',
-## 'X-Firstname:': 'Cosimo'
-## },
-## 'kame@innocent.com': {
-## 'From:': 'kame@inwind.it',
-## 'Reply-to': 'me',
-## 'Reply-to:': 'KA',
-## 'Sender:': 'Kalfa'}
-## }
-
-
-@pg.production('main : block')
-def main(p):
- return p[0]
-
-
-# block:
-# blockstatement
-# | block blockstatement
-@pg.production('block : blockstatement')
-def block(p):
- logging.debug('block p = %s', p)
- return p[0]
-
-
-@pg.production('block : block blockstatement')
-def block_blockstatement(p):
- logging.debug('block p = %s', p)
- return [p[0], [p[1]]]
-
-
-# blockstatement:
-# owner '{' commandline '}'
-@pg.production('blockstatement : OWNER commandline')
-def blockstatement(p):
- logging.debug('blockstatement p = %s', p)
- return [p[0], [p[1]]]
-
-
-# commandline:
-# command | commandline command
-@pg.production('commandline : command')
-def commandline(p):
- logging.debug('commandline p = %s', p)
- return p[0]
-
-@pg.production('commandline : commandline command')
-def commandline_command(p):
- return p[0] + [p[1]]
-
-# command:
-# varpart '=' valpart { found(left,right,owner); }
-@pg.production('command : VAR VAL')
-def command(p):
- logging.debug('command p = %s', p)
- return [p[0], p[1]]
-
-parser = pg.build()