/**
 * Interface for a Dictionary, which allows insertion of
 * word/definition pairs and the retrieval of a definition for a given
 * word.
 *
 * David Liben-Nowell (CS127, Carleton College)
 * Winter 2006
 *
 */

public interface Dictionary {
    /*
     * Inserts a new (word,definition) pair into the dictionary.
     */
    void insert(String word, String definition);

    /*
     * Returns a definition of the given word in the dictionary.  If
     * there is no (word,def) that was inserted into the dictionary,
     * throws a NotInDictionaryException.  If there is more than one
     * definition of the given word in the dictionary, returns an
     * arbitrary one of the definitions.
     */
    String define(String word) throws NotInDictionaryException;
}
