diff options
author | murf <murf@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-04-21 21:13:02 +0000 |
---|---|---|
committer | murf <murf@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-04-21 21:13:02 +0000 |
commit | 137c1d8d9edab78e7cc0f238e4898ae6adca8e11 (patch) | |
tree | e783203f7d0fa05d28feb3bc509c19bc885d2666 /doc | |
parent | 724844c2758c811b9723bb787f465e85da668f20 (diff) |
(closes issue #12467)
Reported by: atis
Tested by: murf
This upgrade adds the ~~ (concatenation) string operator to expr2.
While not needed in normal runtime pbx operation, it is needed when
raw exprs are being syntax checked. This plays into future syntax-
unification plans. By permission of atis, this addition in trunk
and the reason of why things are as they are will suffice to close
this bug.
I also added a short note about the previous addition of "sip show sched"
to the CLI in CHANGES, which I discovered I forgot in a previous commit.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114423 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'doc')
-rw-r--r-- | doc/tex/ael.tex | 6 | ||||
-rw-r--r-- | doc/tex/channelvariables.tex | 21 |
2 files changed, 24 insertions, 3 deletions
diff --git a/doc/tex/ael.tex b/doc/tex/ael.tex index 4d9fa2433..b76088fa0 100644 --- a/doc/tex/ael.tex +++ b/doc/tex/ael.tex @@ -38,7 +38,7 @@ AEL is really the merger of 4 different 'languages', or syntaxes: language, that AEL will compile into. \end{itemize} -Any programmer of AEL should be familiar with it's syntax, of course, +Any programmer of AEL should be familiar with its syntax, of course, as well as the Expression syntax, and the Variable syntax. @@ -114,9 +114,9 @@ the Asterisk environment! \section{Getting Started} -The AEL parser (pbx\_ael.so) is completely separate from the module +The AEL parser (res\_ael.so) is completely separate from the module that parses extensions.conf (pbx\_config.so). To use AEL, the only -thing that has to be done is the module pbx\_ael.so must be loaded by +thing that has to be done is the module res\_ael.so must be loaded by Asterisk. This will be done automatically if using 'autoload=yes' in \path{/etc/asterisk/modules.conf}. When the module is loaded, it will look for 'extensions.ael' in \path{/etc/asterisk/}. extensions.conf and diff --git a/doc/tex/channelvariables.tex b/doc/tex/channelvariables.tex index 9f1104c52..ca0acbf97 100644 --- a/doc/tex/channelvariables.tex +++ b/doc/tex/channelvariables.tex @@ -302,6 +302,27 @@ with equal precedence are grouped within \{ \} symbols. will be the result of the "evaluation" of this expression. expr3 will be the result otherwise. This operator has the lowest precedence. + + \item \verb!expr1 ~~ expr2! + + Concatenation operator. The two exprs are evaluated and + turned into strings, stripped of surrounding double quotes, + and are turned into a single string with no invtervening spaces. + This operator is new to trunk after 1.6.0; it is not needed + in existing extensions.conf code. Because of the way asterisk + evaluates ${ } and $[ ] constructs (recursively, bottom- + up), no $[] or ${} is ever present when the contents + of a ${} or $[] is evaluated. Thus, tokens are usually + already merged at evaluation time. But, in AEL, various + exprs are evaluated raw, and ${} and $[] are gathered + and treated as tokens. And in AEL, no two tokens can + sit side by side without an intervening operator. + So, in AEL, concatenation must be explicitly specified + in expressions. This new operator will play well into + future plans, where expressions ($[] constructs, and + variable references (${} constructs) are merged into a + single grammar. + \end{itemize} Parentheses are used for grouping in the usual manner. |