1 // $ANTLR : "Analex.g" -> "Analex.java"$
3 import java.io.InputStream;
4 import antlr.TokenStreamException;
5 import antlr.TokenStreamIOException;
6 import antlr.TokenStreamRecognitionException;
7 import antlr.CharStreamException;
8 import antlr.CharStreamIOException;
9 import antlr.ANTLRException;
10 import java.io.Reader;
11 import java.util.Hashtable;
12 import antlr.CharScanner;
13 import antlr.InputBuffer;
14 import antlr.ByteBuffer;
15 import antlr.CharBuffer;
17 import antlr.CommonToken;
18 import antlr.RecognitionException;
19 import antlr.NoViableAltForCharException;
20 import antlr.MismatchedCharException;
21 import antlr.TokenStream;
22 import antlr.ANTLRHashString;
23 import antlr.LexerSharedInputState;
24 import antlr.collections.impl.BitSet;
25 import antlr.SemanticException;
27 public class Analex extends antlr.CharScanner implements AnalexTokenTypes, TokenStream
29 public Analex(InputStream in) {
30 this(new ByteBuffer(in));
32 public Analex(Reader in) {
33 this(new CharBuffer(in));
35 public Analex(InputBuffer ib) {
36 this(new LexerSharedInputState(ib));
38 public Analex(LexerSharedInputState state) {
40 caseSensitiveLiterals = true;
41 setCaseSensitive(true);
42 literals = new Hashtable();
43 literals.put(new ANTLRHashString("exportacion", this), new Integer(33));
44 literals.put(new ANTLRHashString("entero", this), new Integer(73));
45 literals.put(new ANTLRHashString("si", this), new Integer(45));
46 literals.put(new ANTLRHashString("finsi", this), new Integer(48));
47 literals.put(new ANTLRHashString("y", this), new Integer(53));
48 literals.put(new ANTLRHashString("entonces", this), new Integer(46));
49 literals.put(new ANTLRHashString("no", this), new Integer(54));
50 literals.put(new ANTLRHashString("enteroareal", this), new Integer(79));
51 literals.put(new ANTLRHashString("modulo", this), new Integer(28));
52 literals.put(new ANTLRHashString("clase", this), new Integer(36));
53 literals.put(new ANTLRHashString("mientras", this), new Integer(49));
54 literals.put(new ANTLRHashString("oculto", this), new Integer(6));
55 literals.put(new ANTLRHashString("finmientras", this), new Integer(51));
56 literals.put(new ANTLRHashString("realaentero", this), new Integer(80));
57 literals.put(new ANTLRHashString("falso", this), new Integer(70));
58 literals.put(new ANTLRHashString("hacer", this), new Integer(50));
59 literals.put(new ANTLRHashString("importacion", this), new Integer(31));
60 literals.put(new ANTLRHashString("dev", this), new Integer(42));
61 literals.put(new ANTLRHashString("o", this), new Integer(52));
62 literals.put(new ANTLRHashString("cierto", this), new Integer(69));
63 literals.put(new ANTLRHashString("real", this), new Integer(74));
64 literals.put(new ANTLRHashString("sino", this), new Integer(47));
65 literals.put(new ANTLRHashString("crear", this), new Integer(44));
66 literals.put(new ANTLRHashString("inst", this), new Integer(35));
67 literals.put(new ANTLRHashString("formacion", this), new Integer(77));
68 literals.put(new ANTLRHashString("escribir", this), new Integer(78));
69 literals.put(new ANTLRHashString("logico", this), new Integer(75));
70 literals.put(new ANTLRHashString("caracter", this), new Integer(76));
71 literals.put(new ANTLRHashString("implementacion", this), new Integer(34));
74 public Token nextToken() throws TokenStreamException {
75 Token theRetToken=null;
79 int _ttype = Token.INVALID_TYPE;
81 try { // for char stream error handling
82 try { // for lexical error handling
87 theRetToken=_returnToken;
93 theRetToken=_returnToken;
98 mPARENTESIS_ABIERTO(true);
99 theRetToken=_returnToken;
104 mPARENTESIS_CERRADO(true);
105 theRetToken=_returnToken;
110 mLLAVE_ABIERTA(true);
111 theRetToken=_returnToken;
116 mLLAVE_CERRADA(true);
117 theRetToken=_returnToken;
122 mCORCHETE_ABIERTO(true);
123 theRetToken=_returnToken;
128 mCORCHETE_CERRADO(true);
129 theRetToken=_returnToken;
135 theRetToken=_returnToken;
141 theRetToken=_returnToken;
147 theRetToken=_returnToken;
153 theRetToken=_returnToken;
159 theRetToken=_returnToken;
165 theRetToken=_returnToken;
171 theRetToken=_returnToken;
177 theRetToken=_returnToken;
180 case '0': case '1': case '2': case '3':
181 case '4': case '5': case '6': case '7':
185 theRetToken=_returnToken;
191 theRetToken=_returnToken;
194 case 'A': case 'B': case 'C': case 'D':
195 case 'E': case 'F': case 'G': case 'H':
196 case 'I': case 'J': case 'K': case 'L':
197 case 'M': case 'N': case 'O': case 'P':
198 case 'Q': case 'R': case 'S': case 'T':
199 case 'U': case 'V': case 'W': case 'X':
200 case 'Y': case 'Z': case 'a': case 'b':
201 case 'c': case 'd': case 'e': case 'f':
202 case 'g': case 'h': case 'i': case 'j':
203 case 'k': case 'l': case 'm': case 'n':
204 case 'o': case 'p': case 'q': case 'r':
205 case 's': case 't': case 'u': case 'v':
206 case 'w': case 'x': case 'y': case 'z':
209 theRetToken=_returnToken;
213 if ((LA(1)=='/') && (LA(2)=='/')) {
215 theRetToken=_returnToken;
217 else if ((LA(1)=='<') && (LA(2)=='=')) {
219 theRetToken=_returnToken;
221 else if ((LA(1)=='>') && (LA(2)=='=')) {
223 theRetToken=_returnToken;
225 else if ((LA(1)==':') && (LA(2)=='=')) {
227 theRetToken=_returnToken;
229 else if ((LA(1)==':') && (true)) {
231 theRetToken=_returnToken;
233 else if ((LA(1)=='/') && (true)) {
235 theRetToken=_returnToken;
237 else if ((LA(1)=='<') && (true)) {
239 theRetToken=_returnToken;
241 else if ((LA(1)=='>') && (true)) {
243 theRetToken=_returnToken;
246 if (LA(1)==EOF_CHAR) {uponEOF(); _returnToken = makeToken(Token.EOF_TYPE);}
247 else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
250 if ( _returnToken==null ) continue tryAgain; // found SKIP token
251 _ttype = _returnToken.getType();
252 _returnToken.setType(_ttype);
255 catch (RecognitionException e) {
256 throw new TokenStreamRecognitionException(e);
259 catch (CharStreamException cse) {
260 if ( cse instanceof CharStreamIOException ) {
261 throw new TokenStreamIOException(((CharStreamIOException)cse).io);
264 throw new TokenStreamException(cse.getMessage());
270 public final void mBT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
271 int _ttype; Token _token=null; int _begin=text.length();
289 throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
293 if ( inputState.guessing==0 ) {
296 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
297 _token = makeToken(_ttype);
298 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
300 _returnToken = _token;
303 public final void mSL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
304 int _ttype; Token _token=null; int _begin=text.length();
322 throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
326 if ( inputState.guessing==0 ) {
327 newline();_ttype = Token.SKIP;
329 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
330 _token = makeToken(_ttype);
331 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
333 _returnToken = _token;
336 public final void mCOMENT_LIN(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
337 int _ttype; Token _token=null; int _begin=text.length();
345 if ((_tokenSet_0.member(LA(1))) && ((LA(2) >= '\u0003' && LA(2) <= '\u00ff'))) {
357 if ( inputState.guessing==0 ) {
358 newline();_ttype = Token.SKIP;
360 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
361 _token = makeToken(_ttype);
362 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
364 _returnToken = _token;
367 public final void mDOS_PUNTOS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
368 int _ttype; Token _token=null; int _begin=text.length();
373 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
374 _token = makeToken(_ttype);
375 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
377 _returnToken = _token;
380 public final void mPARENTESIS_ABIERTO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
381 int _ttype; Token _token=null; int _begin=text.length();
382 _ttype = PARENTESIS_ABIERTO;
386 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
387 _token = makeToken(_ttype);
388 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
390 _returnToken = _token;
393 public final void mPARENTESIS_CERRADO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
394 int _ttype; Token _token=null; int _begin=text.length();
395 _ttype = PARENTESIS_CERRADO;
399 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
400 _token = makeToken(_ttype);
401 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
403 _returnToken = _token;
406 public final void mLLAVE_ABIERTA(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
407 int _ttype; Token _token=null; int _begin=text.length();
408 _ttype = LLAVE_ABIERTA;
412 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
413 _token = makeToken(_ttype);
414 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
416 _returnToken = _token;
419 public final void mLLAVE_CERRADA(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
420 int _ttype; Token _token=null; int _begin=text.length();
421 _ttype = LLAVE_CERRADA;
425 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
426 _token = makeToken(_ttype);
427 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
429 _returnToken = _token;
432 public final void mCORCHETE_ABIERTO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
433 int _ttype; Token _token=null; int _begin=text.length();
434 _ttype = CORCHETE_ABIERTO;
438 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
439 _token = makeToken(_ttype);
440 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
442 _returnToken = _token;
445 public final void mCORCHETE_CERRADO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
446 int _ttype; Token _token=null; int _begin=text.length();
447 _ttype = CORCHETE_CERRADO;
451 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
452 _token = makeToken(_ttype);
453 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
455 _returnToken = _token;
458 public final void mCOMA(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
459 int _ttype; Token _token=null; int _begin=text.length();
464 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
465 _token = makeToken(_ttype);
466 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
468 _returnToken = _token;
471 public final void mPUNTO_Y_COMA(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
472 int _ttype; Token _token=null; int _begin=text.length();
473 _ttype = PUNTO_Y_COMA;
477 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
478 _token = makeToken(_ttype);
479 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
481 _returnToken = _token;
484 public final void mPUNTO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
485 int _ttype; Token _token=null; int _begin=text.length();
490 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
491 _token = makeToken(_ttype);
492 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
494 _returnToken = _token;
497 public final void mMAS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
498 int _ttype; Token _token=null; int _begin=text.length();
503 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
504 _token = makeToken(_ttype);
505 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
507 _returnToken = _token;
510 public final void mMENOS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
511 int _ttype; Token _token=null; int _begin=text.length();
516 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
517 _token = makeToken(_ttype);
518 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
520 _returnToken = _token;
523 public final void mPOR(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
524 int _ttype; Token _token=null; int _begin=text.length();
529 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
530 _token = makeToken(_ttype);
531 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
533 _returnToken = _token;
536 public final void mDIVISION(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
537 int _ttype; Token _token=null; int _begin=text.length();
542 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
543 _token = makeToken(_ttype);
544 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
546 _returnToken = _token;
549 public final void mMENOR(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
550 int _ttype; Token _token=null; int _begin=text.length();
555 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
556 _token = makeToken(_ttype);
557 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
559 _returnToken = _token;
562 public final void mMENOR_IGUAL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
563 int _ttype; Token _token=null; int _begin=text.length();
564 _ttype = MENOR_IGUAL;
568 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
569 _token = makeToken(_ttype);
570 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
572 _returnToken = _token;
575 public final void mMAYOR(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
576 int _ttype; Token _token=null; int _begin=text.length();
581 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
582 _token = makeToken(_ttype);
583 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
585 _returnToken = _token;
588 public final void mMAYOR_IGUAL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
589 int _ttype; Token _token=null; int _begin=text.length();
590 _ttype = MAYOR_IGUAL;
594 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
595 _token = makeToken(_ttype);
596 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
598 _returnToken = _token;
601 public final void mIGUAL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
602 int _ttype; Token _token=null; int _begin=text.length();
607 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
608 _token = makeToken(_ttype);
609 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
611 _returnToken = _token;
614 public final void mDISTINTO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
615 int _ttype; Token _token=null; int _begin=text.length();
620 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
621 _token = makeToken(_ttype);
622 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
624 _returnToken = _token;
627 public final void mASIGNACION(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
628 int _ttype; Token _token=null; int _begin=text.length();
633 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
634 _token = makeToken(_ttype);
635 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
637 _returnToken = _token;
640 protected final void mDIGITO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
641 int _ttype; Token _token=null; int _begin=text.length();
648 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
649 _token = makeToken(_ttype);
650 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
652 _returnToken = _token;
655 protected final void mLETRA(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
656 int _ttype; Token _token=null; int _begin=text.length();
662 case 'a': case 'b': case 'c': case 'd':
663 case 'e': case 'f': case 'g': case 'h':
664 case 'i': case 'j': case 'k': case 'l':
665 case 'm': case 'n': case 'o': case 'p':
666 case 'q': case 'r': case 's': case 't':
667 case 'u': case 'v': case 'w': case 'x':
673 case 'A': case 'B': case 'C': case 'D':
674 case 'E': case 'F': case 'G': case 'H':
675 case 'I': case 'J': case 'K': case 'L':
676 case 'M': case 'N': case 'O': case 'P':
677 case 'Q': case 'R': case 'S': case 'T':
678 case 'U': case 'V': case 'W': case 'X':
686 throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
690 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
691 _token = makeToken(_ttype);
692 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
694 _returnToken = _token;
697 public final void mNUMERO(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
698 int _ttype; Token _token=null; int _begin=text.length();
702 boolean synPredMatched10057 = false;
703 if ((((LA(1) >= '0' && LA(1) <= '9')) && (_tokenSet_1.member(LA(2))))) {
704 int _m10057 = mark();
705 synPredMatched10057 = true;
706 inputState.guessing++;
713 if (((LA(1) >= '0' && LA(1) <= '9'))) {
717 if ( _cnt10056>=1 ) { break _loop10056; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
726 catch (RecognitionException pe) {
727 synPredMatched10057 = false;
730 inputState.guessing--;
732 if ( synPredMatched10057 ) {
737 if (((LA(1) >= '0' && LA(1) <= '9'))) {
741 if ( _cnt10059>=1 ) { break _loop10059; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
752 if (((LA(1) >= '0' && LA(1) <= '9'))) {
756 if ( _cnt10061>=1 ) { break _loop10061; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
762 if ( inputState.guessing==0 ) {
767 boolean synPredMatched10065 = false;
768 if ((((LA(1) >= '0' && LA(1) <= '9')) && (true))) {
769 int _m10065 = mark();
770 synPredMatched10065 = true;
771 inputState.guessing++;
778 if (((LA(1) >= '0' && LA(1) <= '9'))) {
782 if ( _cnt10064>=1 ) { break _loop10064; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
790 catch (RecognitionException pe) {
791 synPredMatched10065 = false;
794 inputState.guessing--;
796 if ( synPredMatched10065 ) {
801 if (((LA(1) >= '0' && LA(1) <= '9'))) {
805 if ( _cnt10067>=1 ) { break _loop10067; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
811 if ( inputState.guessing==0 ) {
816 throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
819 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
820 _token = makeToken(_ttype);
821 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
823 _returnToken = _token;
826 public final void mLIT_CAR(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
827 int _ttype; Token _token=null; int _begin=text.length();
831 _saveIndex=text.length();
833 text.setLength(_saveIndex);
839 _saveIndex=text.length();
841 text.setLength(_saveIndex);
842 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
843 _token = makeToken(_ttype);
844 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
846 _returnToken = _token;
849 public final void mIDENT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
850 int _ttype; Token _token=null; int _begin=text.length();
859 case 'A': case 'B': case 'C': case 'D':
860 case 'E': case 'F': case 'G': case 'H':
861 case 'I': case 'J': case 'K': case 'L':
862 case 'M': case 'N': case 'O': case 'P':
863 case 'Q': case 'R': case 'S': case 'T':
864 case 'U': case 'V': case 'W': case 'X':
865 case 'Y': case 'Z': case 'a': case 'b':
866 case 'c': case 'd': case 'e': case 'f':
867 case 'g': case 'h': case 'i': case 'j':
868 case 'k': case 'l': case 'm': case 'n':
869 case 'o': case 'p': case 'q': case 'r':
870 case 's': case 't': case 'u': case 'v':
871 case 'w': case 'x': case 'y': case 'z':
876 case '0': case '1': case '2': case '3':
877 case '4': case '5': case '6': case '7':
890 _ttype = testLiteralsTable(_ttype);
891 if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
892 _token = makeToken(_ttype);
893 _token.setText(new String(text.getBuffer(), _begin, text.length()-_begin));
895 _returnToken = _token;
899 private static final long[] mk_tokenSet_0() {
900 long[] data = new long[8];
902 for (int i = 1; i<=3; i++) { data[i]=-1L; }
905 public static final BitSet _tokenSet_0 = new BitSet(mk_tokenSet_0());
906 private static final long[] mk_tokenSet_1() {
907 long[] data = { 288019269919178752L, 0L, 0L, 0L, 0L};
910 public static final BitSet _tokenSet_1 = new BitSet(mk_tokenSet_1());
911 private static final long[] mk_tokenSet_2() {
912 long[] data = new long[8];
913 data[0]=-549755823624L;
914 for (int i = 1; i<=3; i++) { data[i]=-1L; }
917 public static final BitSet _tokenSet_2 = new BitSet(mk_tokenSet_2());