(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: https://origsvn.digium.com/svn/asterisk/trunk@114423 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Steve Murphy
2008-04-21 21:13:02 +00:00
parent b43364eac8
commit c0b8f57b9d
19 changed files with 3436 additions and 1396 deletions

View File

@@ -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.