EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: dbStatic: Escape Sequences
From: Marty Kraimer <[email protected]>
To: [email protected]
Date: Tue, 12 Aug 1997 10:54:41 -0500
Ralph Lange (BESSY) made a request that we change
the dbLoadRecords lex syntax to allow more characters
in quoted strings. He also described changes to the
lex program that allowed the new characters.

The change is to do the following: Instead of deciding
what characters to allow just decide what not to allow.
This idea simplifies the lex program and also ends forever
requests similar to
"Why cant I put character x in quoted strings", where
x is some character not currently allowed.

Thus quoted string will be able to contain any ascii character
except the quote character itself. In fact we can easily
allow the quote character to be escaped with a \".
Thus the following is a legal string

"xxx\"yyy"

Note that this allows people to directly imbed control characters
into quoted strings.

These changes will be made to dbLoadDatabase, dbLoadRecords,
dbLoadTemplate, and to the access security lex code.

A sample set of changes are:

> notquote [^\"]
> escapequote \\\"
> value {notquote}|{escapequote}
4,21d6
< BEL    \\a
< BS     \\b
< FF     \\f
< NL     \\n
< CR     \\r
< HT     \\t
< VT     \\v
< backSla  \\\\
< question \\\?
< single   \\\'
< double   \\\"
< octal  \\[0-7]+
< hexa   \\x[a-fA-F0-9]+
< escape
{BEL}|{BS}|{FF}|{NL}|{CR}|{HT}|{VT}|{backSla}|{question}|{single}|{double}|{octal}|{question}|{hexa}
< spaces  [ \t]
< regular [a-zA-Z0-9_\,\^~\./\*#\[\]%:;!|\'\-&\(\)@\?\+<>=\$\{\}]
< value {regular}|{spaces}|{escape}


Note that the lex code is shorter!!!!

Thanks Ralph!!

Marty Kraimer

Navigate by Date:
Prev: EPICS printing speed Tom Himel
Next: RE: EPICS printing speed Jeff Hill
Index: 1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: EPICS printing speed Jeff Hill
Next: VxWorksp2 is ready now! Bakul Banerjee
Index: 1994  1995  1996  <19971998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·