Added element comments to all classes of the expression parser.

Also fixed some id() implementations.
This commit is contained in:
TomyLobo
2011-10-29 17:24:11 +02:00
parent e70446e82e
commit 8797d8ac3c
25 changed files with 153 additions and 3 deletions

View File

@ -34,6 +34,13 @@ import com.sk89q.worldedit.expression.runtime.Constant;
import com.sk89q.worldedit.expression.runtime.Functions;
import com.sk89q.worldedit.expression.runtime.RValue;
/**
* Processes a list of tokens into an executable tree.
*
* Tokens can be numbers, identifiers, operators and assorted other characters.
*
* @author TomyLobo
*/
public class Parser {
private final class NullToken extends Token {
private NullToken(int position) {

View File

@ -21,6 +21,11 @@ package com.sk89q.worldedit.expression.parser;
import com.sk89q.worldedit.expression.ExpressionException;
/**
* Thrown when the parser encounters a problem.
*
* @author TomyLobo
*/
public class ParserException extends ExpressionException {
private static final long serialVersionUID = 1L;

View File

@ -13,6 +13,11 @@ import com.sk89q.worldedit.expression.runtime.RValue;
import com.sk89q.worldedit.expression.runtime.Operators;
import com.sk89q.worldedit.expression.runtime.Sequence;
/**
* Helper classfor Parser. Contains processors for statements and operators.
*
* @author TomyLobo
*/
public final class ParserProcessors {
private static final Map<String, String> unaryOpMap = new HashMap<String, String>();

View File

@ -2,6 +2,11 @@ package com.sk89q.worldedit.expression.parser;
import com.sk89q.worldedit.expression.lexer.tokens.OperatorToken;
/**
* The parser uses this pseudo-token to mark operators as prefix operators.
*
* @author TomyLobo
*/
public class PrefixOperator extends PseudoToken {
final String operator;

View File

@ -21,6 +21,11 @@ package com.sk89q.worldedit.expression.parser;
import com.sk89q.worldedit.expression.Identifiable;
/**
* A pseudo-token, inserted by the parser instead of the lexer.
*
* @author TomyLobo
*/
public abstract class PseudoToken implements Identifiable {
private final int position;