- Main - Class in edu.ucsb.cs56.pconrad.parsing
-
- Main() - Constructor for class edu.ucsb.cs56.pconrad.parsing.Main
-
- main(String[]) - Static method in class edu.ucsb.cs56.pconrad.parsing.Main
-
- main(String[]) - Static method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.Tokenizer
-
main method that can be used for interactive testing of the
tokenizer.
- makeDivideToken() - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that represents a division operator /
- makeDivideToken() - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that represents a division operator /
- makeDivNode(AST, AST) - Method in interface edu.ucsb.cs56.pconrad.parsing.syntax.ASTFactory
-
- makeDivNode(AST, AST) - Method in class edu.ucsb.cs56.pconrad.parsing.syntax.DefaultASTFactory
-
- makeErrorToken(String) - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that indicates there were one or more illegal characters in the input
- makeErrorToken(String) - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that indicates there were one or more illegal characters in the input
- makeFSA() - Static method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.Tokenizer
-
Creates a specific instance of FiniteStateAutomaton with the
states and transitions needed to parse the language implemented
by this arithmetic expression evaluator.
- makeIntToken(String) - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make the type of token that represents an integer
- makeIntToken(String) - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make the type of token that represents an integer
- makeLiteral(int) - Method in interface edu.ucsb.cs56.pconrad.parsing.syntax.ASTFactory
-
- makeLiteral(int) - Method in class edu.ucsb.cs56.pconrad.parsing.syntax.DefaultASTFactory
-
- makeLParenToken() - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that represents a left parentheses (
- makeLParenToken() - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that represents a left parentheses (
- makeMinusNode(AST, AST) - Method in interface edu.ucsb.cs56.pconrad.parsing.syntax.ASTFactory
-
- makeMinusNode(AST, AST) - Method in class edu.ucsb.cs56.pconrad.parsing.syntax.DefaultASTFactory
-
- makeMinusToken() - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that represents a minus sign -
- makeMinusToken() - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that represents a minus sign -
- makePlusNode(AST, AST) - Method in interface edu.ucsb.cs56.pconrad.parsing.syntax.ASTFactory
-
- makePlusNode(AST, AST) - Method in class edu.ucsb.cs56.pconrad.parsing.syntax.DefaultASTFactory
-
- makePlusToken() - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that represents a plus sign +
- makePlusToken() - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that represents a plus sign +
- makeRParenToken() - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that represents a right parentheses )
- makeRParenToken() - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that represents a right parentheses )
- makeTimesNode(AST, AST) - Method in interface edu.ucsb.cs56.pconrad.parsing.syntax.ASTFactory
-
- makeTimesNode(AST, AST) - Method in class edu.ucsb.cs56.pconrad.parsing.syntax.DefaultASTFactory
-
- makeTimesToken() - Method in class edu.ucsb.cs56.pconrad.parsing.tokenizer.DefaultTokenFactory
-
make a token that represents a multiplication operator *
- makeTimesToken() - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenFactory
-
make a token that represents a multiplication operator *
- makeToken(String) - Method in interface edu.ucsb.cs56.pconrad.parsing.tokenizer.TokenMaker
-
- makeUnaryMinusNode(AST) - Method in interface edu.ucsb.cs56.pconrad.parsing.syntax.ASTFactory
-
- makeUnaryMinusNode(AST) - Method in class edu.ucsb.cs56.pconrad.parsing.syntax.DefaultASTFactory
-
- Minus - Class in edu.ucsb.cs56.pconrad.parsing.syntax
-
- Minus() - Constructor for class edu.ucsb.cs56.pconrad.parsing.syntax.Minus
-
- MINUS - Static variable in class edu.ucsb.cs56.pconrad.parsing.syntax.Minus
-
- MINUS_TOKEN - Static variable in class edu.ucsb.cs56.pconrad.parsing.parser.Parser
-
- MinusToken - Class in edu.ucsb.cs56.pconrad.parsing.tokenizer
-
- MinusToken() - Constructor for class edu.ucsb.cs56.pconrad.parsing.tokenizer.MinusToken
-
- parse(ArrayList<Token>) - Method in class edu.ucsb.cs56.pconrad.parsing.DefaultInterpreterInterface
-
Convert sequence of tokens into an abstract syntax tree
- parse(ArrayList<Token>) - Method in class edu.ucsb.cs56.pconrad.parsing.InterpreterInterface
-
- parse() - Method in class edu.ucsb.cs56.pconrad.parsing.parser.Parser
-
Parses the list of tokens provided in the constructor.
- parse(String) - Static method in class edu.ucsb.cs56.pconrad.parsing.parser.ParserTest
-
Convenience method to tokenize and parse the given input
- ParseAdditiveOrMultiplicative - Class in edu.ucsb.cs56.pconrad.parsing.parser
-
Observation: the only differences between parseMultiplicateExpression
and parseAdditiveExpression
(both private
to
Parser
) are:
- ParseAdditiveOrMultiplicative() - Constructor for class edu.ucsb.cs56.pconrad.parsing.parser.ParseAdditiveOrMultiplicative
-
- parseBase(int) - Method in class edu.ucsb.cs56.pconrad.parsing.parser.ParseAdditiveOrMultiplicative
-
The "base" thing to parse, that is, the component that parses nested expressions.
- parseExp(int) - Method in class edu.ucsb.cs56.pconrad.parsing.parser.ParseAdditiveOrMultiplicative
-
Actually parses in the expression, using parseBase
and
parseOp
in the process.
- parseExpectFailure(String) - Method in class edu.ucsb.cs56.pconrad.parsing.parser.ParserTest
-
- parseNoException(String) - Static method in class edu.ucsb.cs56.pconrad.parsing.parser.ParserTest
-
Like parse
, but it does not throw any annotated
exceptions.
- parseOp(int) - Method in class edu.ucsb.cs56.pconrad.parsing.parser.ParseAdditiveOrMultiplicative
-
Parser for the operator in play.
- Parser - Class in edu.ucsb.cs56.pconrad.parsing.parser
-
Parses a sequence of tokens into an AST.
- Parser(ArrayList<Token>) - Constructor for class edu.ucsb.cs56.pconrad.parsing.parser.Parser
-
- ParseResult<A> - Class in edu.ucsb.cs56.pconrad.parsing.parser
-
Encapsulates the result of parsing something in, where "something"
is represented by the type variable A
.
- ParseResult(A, int) - Constructor for class edu.ucsb.cs56.pconrad.parsing.parser.ParseResult
-
- ParserException - Exception in edu.ucsb.cs56.pconrad.parsing.parser
-
Exception thrown when parsing fails, e.g., )3(
.
- ParserException(String) - Constructor for exception edu.ucsb.cs56.pconrad.parsing.parser.ParserException
-
- ParserTest - Class in edu.ucsb.cs56.pconrad.parsing.parser
-
Tests the code in Parser
.
- ParserTest() - Constructor for class edu.ucsb.cs56.pconrad.parsing.parser.ParserTest
-
- Plus - Class in edu.ucsb.cs56.pconrad.parsing.syntax
-
- Plus() - Constructor for class edu.ucsb.cs56.pconrad.parsing.syntax.Plus
-
- PLUS - Static variable in class edu.ucsb.cs56.pconrad.parsing.syntax.Plus
-
- PLUS_TOKEN - Static variable in class edu.ucsb.cs56.pconrad.parsing.parser.Parser
-
- PlusToken - Class in edu.ucsb.cs56.pconrad.parsing.tokenizer
-
- PlusToken() - Constructor for class edu.ucsb.cs56.pconrad.parsing.tokenizer.PlusToken
-