You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by br...@apache.org on 2003/03/02 16:41:52 UTC

cvs commit: db-ojb/src/java/org/apache/ojb/odmg/oql oql-ojb.g OQLLexer.java

brj         2003/03/02 07:41:52

  Modified:    src/java/org/apache/ojb/odmg/oql oql-ojb.g OQLLexer.java
  Log:
  allow '$' in identifier to support inner classes
  
  Revision  Changes    Path
  1.11      +4 -4      db-ojb/src/java/org/apache/ojb/odmg/oql/oql-ojb.g
  
  Index: oql-ojb.g
  ===================================================================
  RCS file: /home/cvs/db-ojb/src/java/org/apache/ojb/odmg/oql/oql-ojb.g,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- oql-ojb.g	4 Feb 2003 20:36:16 -0000	1.10
  +++ oql-ojb.g	2 Mar 2003 15:41:52 -0000	1.11
  @@ -202,10 +202,10 @@
    * Names
    */
   
  -// BRJ: support ->
  +// BRJ: support -> and $ 
   protected
   NameFirstCharacter:
  -        ( 'A'..'Z' | 'a'..'z' | '_' | TOK_DOT | TOK_INDIRECT );
  +        ( 'A'..'Z' | 'a'..'z' | '_' | TOK_DOT | TOK_INDIRECT | TOK_DOLLAR );
   
   // BRJ: use NameFirstCharacter as base
   protected
  @@ -465,7 +465,7 @@
           )*
           | TOK_STAR
       )
  -    
  +
       {
           if (list == null)
           {
  @@ -778,4 +778,4 @@
   		{
   		if (!temp.isEmpty()) {coll = temp;}
   		}
  -    ;
  +    ;
  \ No newline at end of file
  
  
  
  1.4       +25 -22    db-ojb/src/java/org/apache/ojb/odmg/oql/OQLLexer.java
  
  Index: OQLLexer.java
  ===================================================================
  RCS file: /home/cvs/db-ojb/src/java/org/apache/ojb/odmg/oql/OQLLexer.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- OQLLexer.java	24 Oct 2002 18:41:17 -0000	1.3
  +++ OQLLexer.java	2 Mar 2003 15:41:52 -0000	1.4
  @@ -190,12 +190,6 @@
   					theRetToken=_returnToken;
   					break;
   				}
  -				case '$':
  -				{
  -					mTOK_DOLLAR(true);
  -					theRetToken=_returnToken;
  -					break;
  -				}
   				case '\'':
   				{
   					mCharLiteral(true);
  @@ -265,6 +259,10 @@
   						mTOK_GT(true);
   						theRetToken=_returnToken;
   					}
  +					else if ((LA(1)=='$') && (true)) {
  +						mTOK_DOLLAR(true);
  +						theRetToken=_returnToken;
  +					}
   					else if ((_tokenSet_0.member(LA(1))) && (true)) {
   						mIdentifier(true);
   						theRetToken=_returnToken;
  @@ -635,6 +633,11 @@
   			mTOK_INDIRECT(false);
   			break;
   		}
  +		case '$':
  +		{
  +			mTOK_DOLLAR(false);
  +			break;
  +		}
   		default:
   		{
   			throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine());
  @@ -655,20 +658,20 @@
   		
   		{
   		switch ( LA(1)) {
  -		case '-':  case '.':  case 'A':  case 'B':
  -		case 'C':  case 'D':  case 'E':  case 'F':
  -		case 'G':  case 'H':  case 'I':  case 'J':
  -		case 'K':  case 'L':  case 'M':  case 'N':
  -		case 'O':  case 'P':  case 'Q':  case 'R':
  -		case 'S':  case 'T':  case 'U':  case 'V':
  -		case 'W':  case 'X':  case 'Y':  case 'Z':
  -		case '_':  case 'a':  case 'b':  case 'c':
  -		case 'd':  case 'e':  case 'f':  case 'g':
  -		case 'h':  case 'i':  case 'j':  case 'k':
  -		case 'l':  case 'm':  case 'n':  case 'o':
  -		case 'p':  case 'q':  case 'r':  case 's':
  -		case 't':  case 'u':  case 'v':  case 'w':
  -		case 'x':  case 'y':  case 'z':
  +		case '$':  case '-':  case '.':  case 'A':
  +		case 'B':  case 'C':  case 'D':  case 'E':
  +		case 'F':  case 'G':  case 'H':  case 'I':
  +		case 'J':  case 'K':  case 'L':  case 'M':
  +		case 'N':  case 'O':  case 'P':  case 'Q':
  +		case 'R':  case 'S':  case 'T':  case 'U':
  +		case 'V':  case 'W':  case 'X':  case 'Y':
  +		case 'Z':  case '_':  case 'a':  case 'b':
  +		case 'c':  case 'd':  case 'e':  case 'f':
  +		case 'g':  case 'h':  case 'i':  case 'j':
  +		case 'k':  case 'l':  case 'm':  case 'n':
  +		case 'o':  case 'p':  case 'q':  case 'r':
  +		case 's':  case 't':  case 'u':  case 'v':
  +		case 'w':  case 'x':  case 'y':  case 'z':
   		{
   			mNameFirstCharacter(false);
   			break;
  @@ -1096,11 +1099,11 @@
   	}
   	
   	
  -	private static final long _tokenSet_0_data_[] = { 105553116266496L, 576460745995190270L, 0L, 0L, 0L };
  +	private static final long _tokenSet_0_data_[] = { 105621835743232L, 576460745995190270L, 0L, 0L, 0L };
   	public static final BitSet _tokenSet_0 = new BitSet(_tokenSet_0_data_);
   	private static final long _tokenSet_1_data_[] = { 288019269919178752L, 0L, 0L, 0L, 0L };
   	public static final BitSet _tokenSet_1 = new BitSet(_tokenSet_1_data_);
  -	private static final long _tokenSet_2_data_[] = { 288054454291267584L, 576460745995190270L, 0L, 0L, 0L };
  +	private static final long _tokenSet_2_data_[] = { 288054523010744320L, 576460745995190270L, 0L, 0L, 0L };
   	public static final BitSet _tokenSet_2 = new BitSet(_tokenSet_2_data_);
   	private static final long _tokenSet_3_data_[] = { -549755814920L, -1L, -1L, -1L, 0L, 0L, 0L, 0L };
   	public static final BitSet _tokenSet_3 = new BitSet(_tokenSet_3_data_);