Author: olga
Date: Mon Apr  7 17:44:05 2008
New Revision: 645746

URL: http://svn.apache.org/viewvc?rev=645746&view=rev
Log:
PIG-84: streaming bug fixes

Modified:
    incubator/pig/trunk/CHANGES.txt
    
incubator/pig/trunk/src/org/apache/pig/tools/pigscript/parser/PigScriptParser.jj

Modified: incubator/pig/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/incubator/pig/trunk/CHANGES.txt?rev=645746&r1=645745&r2=645746&view=diff
==============================================================================
--- incubator/pig/trunk/CHANGES.txt (original)
+++ incubator/pig/trunk/CHANGES.txt Mon Apr  7 17:44:05 2008
@@ -205,3 +205,5 @@
     PIG-181: streaming bug fixing (arunc via olgan)
 
     PIG-182: streaming bug fix (arunc via olgan)
+
+    PIG-184: streaming bug fixes

Modified: 
incubator/pig/trunk/src/org/apache/pig/tools/pigscript/parser/PigScriptParser.jj
URL: 
http://svn.apache.org/viewvc/incubator/pig/trunk/src/org/apache/pig/tools/pigscript/parser/PigScriptParser.jj?rev=645746&r1=645745&r2=645746&view=diff
==============================================================================
--- 
incubator/pig/trunk/src/org/apache/pig/tools/pigscript/parser/PigScriptParser.jj
 (original)
+++ 
incubator/pig/trunk/src/org/apache/pig/tools/pigscript/parser/PigScriptParser.jj
 Mon Apr  7 17:44:05 2008
@@ -157,6 +157,7 @@
 <PIG_START> MORE :
 {
        <"'"> {prevState = PIG_START;} : IN_STRING
+|      <"`"> {prevState = PIG_START;} : IN_COMMAND
 |       <"{"> {pigBlockLevel = 1;} : IN_BLOCK
 |       <"}"> {if (true) throw new TokenMgrError("Unmatched '}'", 
TokenMgrError.LEXICAL_ERROR);}
 |       <";"> : PIG_END
@@ -187,12 +188,21 @@
 |      <(~[])>
 }
 
+<IN_COMMAND> MORE :
+{
+       <"\\`">
+|      <"`"> { SwitchTo(prevState);}
+|      <("\n" | "\r" | "\r\n")> {secondary_prompt();}
+|      <(~[])>
+}
+
 <IN_BLOCK> MORE :
 {
        <"\""> {prevState = IN_BLOCK;} : IN_STRING
 |      <"{"> {pigBlockLevel++;}
 |       <"}"(";")?> {pigBlockLevel--; if (pigBlockLevel == 0) 
SwitchTo(PIG_END);}
 |      <"'"> {prevState = IN_BLOCK;} : IN_STRING
+|      <"`"> {prevState = IN_BLOCK;} : IN_COMMAND
 |      <"--"> {prevState = IN_BLOCK;} : SINGLE_LINE_COMMENT
 |      <"/*"> {prevState = IN_BLOCK;} : MULTI_LINE_COMMENT
 |      <("\n" | "\r" | "\r\n")> {secondary_prompt();}
@@ -454,4 +464,4 @@
        } else {
                throw e;
        }
-}
\ No newline at end of file
+}


Reply via email to