/*
Adriane Boyd

Definitions and declarations for Grammar class.

*/

#ifndef _GRAMMAR
#define _GRAMMAR

#include <fstream.h>
#include <string.h>
#include "tlist.h"

#define MAX_NUM_RULES 100

class Grammar
{
	public:
		Grammar();
		~Grammar();
		void makeEmpty();

		int read(ifstream& file);
		char *getStartSymbol();
		TList *getRHS(char *, int);
		int getNumMatches(char *);

		void print();

	private:
		int numrules;
		TList *rules[MAX_NUM_RULES];

};

#endif
