// Path: src/iode/ast/Node.java
// public abstract class Node  {
// 	public abstract String generate();
// }
// 
// Path: src/iode/scanning/Token.java
// public class Token {
// 	private TokenType type;
// 	private String value;
// 	
// 	public Token(TokenType type, String value) {
// 		this.type = type;
// 		this.value = value;
// 	}
// 
// 	public TokenType getType() {
// 		return type;
// 	}
// 
// 	public void setType(TokenType type) {
// 		this.type = type;
// 	}
// 
// 	public String getValue() {
// 		return value;
// 	}
// 
// 	public void setValue(String value) {
// 		this.value = value;
// 	}
// }
// 
// Path: src/iode/scanning/TokenType.java
// public enum TokenType {
// 	// Regular	
// 	IDENTIFIER,
// 	STRING,
// 	CHAR,
// 	NUMBER,
// 	DOUBLE,
// 	BOOLEAN,
// 	NIL,
// 	
// 	// Keywords
// 	LET,
// 	VAR,
// 	FUNCTION,
// 	IMPORT,
// 	RETURN,
// 	ENUM,
// 	
// 	// Symbols
// 	EQUALS,
// 	ADD,
// 	SUB,
// 	MUL,
// 	DIV,
// 	GT,
// 	LT,
// 	DOT,
// 	COMMA,
// 	COLON,
// 	LPAREN,
// 	RPAREN,
// 	LBRACE,
// 	RBRACE,
// 	LBRACK,
// 	RBRACK,
// 	NEWLINE
// }


import iode.ast.Node;
import iode.scanning.Token;
import iode.scanning.TokenType;
package iode.parsing;


public interface IParser {
	Token peekToken();
	boolean peekCheck(TokenType type);
	boolean peekSpecificCheck(TokenType type, int i);
	Token peekSpecific(int i);
	Token nextToken();
	void skipNewline();
// Path: src/iode/ast/Node.java
// public abstract class Node  {
// 	public abstract String generate();
// }
// 
// Path: src/iode/scanning/Token.java
// public class Token {
// 	private TokenType type;
// 	private String value;
// 	
// 	public Token(TokenType type, String value) {
// 		this.type = type;
// 		this.value = value;
// 	}
// 
// 	public TokenType getType() {
// 		return type;
// 	}
// 
// 	public void setType(TokenType type) {
// 		this.type = type;
// 	}
// 
// 	public String getValue() {
// 		return value;
// 	}
// 
// 	public void setValue(String value) {
// 		this.value = value;
// 	}
// }
// 
// Path: src/iode/scanning/TokenType.java
// public enum TokenType {
// 	// Regular	
// 	IDENTIFIER,
// 	STRING,
// 	CHAR,
// 	NUMBER,
// 	DOUBLE,
// 	BOOLEAN,
// 	NIL,
// 	
// 	// Keywords
// 	LET,
// 	VAR,
// 	FUNCTION,
// 	IMPORT,
// 	RETURN,
// 	ENUM,
// 	
// 	// Symbols
// 	EQUALS,
// 	ADD,
// 	SUB,
// 	MUL,
// 	DIV,
// 	GT,
// 	LT,
// 	DOT,
// 	COMMA,
// 	COLON,
// 	LPAREN,
// 	RPAREN,
// 	LBRACE,
// 	RBRACE,
// 	LBRACK,
// 	RBRACK,
// 	NEWLINE
// }


// Path: src/iode/parsing/IParser.java
import iode.ast.Node;
import iode.scanning.Token;
import iode.scanning.TokenType;

package iode.parsing;


public interface IParser {
	Token peekToken();
	boolean peekCheck(TokenType type);
	boolean peekSpecificCheck(TokenType type, int i);
	Token peekSpecific(int i);
	Token nextToken();
	void skipNewline();
	Node start();