#ifndef CSE2320_TOKENS_H
#define CSE2320_TOKENS_H

#include "lists.h"
typedef struct token_struct * Token;

int tokenIsLeftParen(Token token);

int tokenIsRightParen(Token token);

int tokenIsOperator(Token token);

int tokenIsInt(Token token);

char tokenOperator(Token token);

int tokenInt(Token token);

void tokenPrint(Token token);

// some auxiliary functions, to interface tokens with lists and stacks.
void printTokenList(list tokens);

// This is the most important function, it converts a string into
// a list of tokens.
list tokenize(char * input);


#endif	/* CSE2320_TOKENS_H */

