> -----Original Message----- > From: Stefan Groschupf [mailto:[EMAIL PROTECTED] > Sent: Thursday, February 28, 2008 5:59 PM > To: [email protected] > Subject: pigScriptParser > > Hi, > I try to better understand the pig script parser. So two questions: > in <DEFAULT> MORE : what is <"split"> all about?
Pig has a split command which is the only one that does not follow the pattern <alias> = <stuff> because it actually splits the stream and causes several aliases to be produced. Here is the example from PigLatin page: SPLIT A INTO X IF $0 < 7, Y IF ($0 > 2 AND $0<> 7); > What stands <(~[])> in <PIG_START> MORE : and all the others for? This is how you specify *any character* in javacc. > > Also in case of a A = LOAD, > I understand that A would be the matched in the default state > but in which state or token would LOAD be matched? We have a 2 level parser: Grunt parser handles all commands other than Pig commands and passes Pig commands to the pig parser. To do so, it needs to parse the pig command enough to figure out that it needs to go to pig parser. Olga
