Changeset 3080 for proto/pabloj


Ignore:
Timestamp:
Apr 27, 2013, 1:15:49 AM (6 years ago)
Author:
ksherdy
Message:

Minor PabloS updates.

Location:
proto/pabloj/trunk/src/pabloS
Files:
7 added
6 edited

Legend:

Unmodified
Added
Removed
  • proto/pabloj/trunk/src/pabloS/lexicalAnalyzer/tokenRecognizers/CharacterTokenRecognizer.java

    r2834 r3080  
    1010import pabloS.tokens.CharacterToken;
    1111import pabloS.tokens.Token;
     12import pabloS.tokens.NullToken;
    1213import pabloS.inputHandler.BookmarkCharStream;
    1314import pabloS.inputHandler.LocatedChar;
    1415import pabloS.inputHandler.TextLocation;
     16import pabloS.inputHandler.LocatedCharStream;
    1517
    1618public class CharacterTokenRecognizer extends TokenRecognizerImp {
     19
    1720        public CharacterTokenRecognizer(BookmarkCharStream input, LexicalType lexicalType) {
    1821                super(input, lexicalType);
     
    2023
    2124        protected Result tryToReadToken() {
     25               
    2226                LocatedChar firstChar = input.next();
    2327                TextLocation location = firstChar.getLocation();
     
    2933                return Result.FOUND;
    3034        }
     35       
    3136}
    3237
  • proto/pabloj/trunk/src/pabloS/lexicalAnalyzer/tokenRecognizers/IdentifierTokenRecognizer.java

    r2834 r3080  
    6666        }
    6767        public static boolean isIdentifierStart(LocatedChar lc) {
    68                 return Character.isJavaIdentifierStart(lc.getCharacter());
     68                return isIdentifierStart(lc.getCharacter());
    6969        }
    7070        public static boolean isIdentifierStart(char c) {
    71                 return Character.isJavaIdentifierStart(c);
     71                return Character.isJavaIdentifierStart(c) && (c != '$');
    7272        }
    7373}
  • proto/pabloj/trunk/src/pabloS/lexicalAnalyzer/tokenRecognizers/TokenRecognizerImp.java

    r2834 r3080  
    115115                return result;
    116116        }
     117               
    117118        private boolean sloppyInputStartsWith(String lexeme) {
    118119                for(int i=0; i<lexeme.length(); i++) {
  • proto/pabloj/trunk/src/pabloS/parser/Parser.java

    r2988 r3080  
    817817                        ASTNode temp_1 = result;
    818818                        IntValuedNodeType temp_3 = (IntValuedNodeType)temp_1;
    819                         IntConstantToken temp_6 = (IntConstantToken)previouslyRead;
     819                        IntValuedToken temp_6 = (IntValuedToken)previouslyRead;
    820820                        int temp_5 = temp_6.getValue();
    821821                        temp_3.setValue( temp_5 );
  • proto/pabloj/trunk/src/pabloS/tokens/CharacterToken.java

    r2834 r3080  
    1111import pabloS.inputHandler.TextLocation;
    1212
    13 public class CharacterToken extends TokenImp {
     13public class CharacterToken extends TokenImp  implements IntValuedToken {
    1414        protected CharacterToken(LexicalType type, TextLocation location, String lexeme) {
    1515                super(type, location, lexeme.intern());
     
    2121        }
    2222
    23 
     23        public int getValue() {
     24                return (int)(getLexeme().charAt(0));
     25        }
     26       
    2427        @Override
    2528        protected String rawString() {
  • proto/pabloj/trunk/src/pabloS/tokens/IntConstantToken.java

    r2834 r3080  
    1111import pabloS.inputHandler.TextLocation;
    1212
    13 public class IntConstantToken extends TokenImp {
     13public class IntConstantToken extends TokenImp implements IntValuedToken {
    1414        protected int value;
    1515       
Note: See TracChangeset for help on using the changeset viewer.