/src/org/ooc/frontend/parser/AccessParser.java
http://github.com/nddrylliog/ooc · Java · 33 lines · 26 code · 7 blank · 0 comment · 4 complexity · 32fccd55d5511cf23b6c0917c1a71352 MD5 · raw file
- package org.ooc.frontend.parser;
- import org.ooc.frontend.model.Module;
- import org.ooc.frontend.model.Type;
- import org.ooc.frontend.model.TypeAccess;
- import org.ooc.frontend.model.VariableAccess;
- import org.ooc.frontend.model.tokens.Token;
- import org.ooc.frontend.model.tokens.TokenReader;
- import org.ubi.SourceReader;
- public class AccessParser {
- public static VariableAccess parse(Module module, SourceReader sReader, TokenReader reader) {
- int mark = reader.mark();
-
- Token token = reader.peek();
- if(token.isNameToken()) {
- Type type = TypeParser.parse(module, sReader, reader);
- if(type != null && type.getTypeParams().size() > 0) {
- return new TypeAccess(type, token);
- }
-
- reader.reset(mark);
- reader.skip();
- String name = token.get(sReader);
- return new VariableAccess(name, token);
- }
-
- reader.reset(mark);
- return null;
- }
-
- }