diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2007-12-11 11:53:18 +0000 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2007-12-11 11:53:18 +0000 |
commit | 4465b4d4ac8e209efcffe4030713144b3a4459c9 (patch) | |
tree | d9a58c96c230dc1c765cc5bf0b5eb52e0001b56c /expr.c | |
parent | f3e56a164d3a9ccc5dec74e478fdb104965c9b05 (diff) | |
download | rsyslog-4465b4d4ac8e209efcffe4030713144b3a4459c9.tar.gz rsyslog-4465b4d4ac8e209efcffe4030713144b3a4459c9.tar.bz2 rsyslog-4465b4d4ac8e209efcffe4030713144b3a4459c9.zip |
added expr.c, which has some thoughts on expression implementation
Diffstat (limited to 'expr.c')
-rw-r--r-- | expr.c | 40 |
1 files changed, 40 insertions, 0 deletions
@@ -0,0 +1,40 @@ +/* expr.c - an expression class. + * This module contains all code needed to represent expressions. Most + * importantly, that means code to parse and execute them. Expressions + * heavily depend on (loadable) functions, so it works in conjunction + * with the function manager. + * + * Module begun 2007-11-30 by Rainer Gerhards + * + * Copyright 2007 Rainer Gerhards and Adiscon GmbH. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * A copy of the GPL can be found in the file "COPYING" in this distribution. + */ + +/* This is the syntax of an expression. I keep it as inline documentation + * as this enhances the chance that it is updates should there be a change. + * + * expr = (simple-string / template-string / function / property) [* expr ] + * simple-string = "'" chars "'" + * template-string = '"' template-as--1.19.11-and-below '"' + * ; string as used in previous $template directive + * function = function-name "(" expr ")" + * property = [list of property names] + */ + +/* vi:set ai: + */ |