--- /dev/null
+/*\r
+Jazzy - a Java library for Spell Checking\r
+Copyright (C) 2001 Mindaugas Idzelis\r
+Full text of license can be found in LICENSE.txt\r
+\r
+This library is free software; you can redistribute it and/or\r
+modify it under the terms of the GNU Lesser General Public\r
+License as published by the Free Software Foundation; either\r
+version 2.1 of the License, or (at your option) any later version.\r
+\r
+This library is distributed in the hope that it will be useful,\r
+but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
+Lesser General Public License for more details.\r
+\r
+You should have received a copy of the GNU Lesser General Public\r
+License along with this library; if not, write to the Free Software\r
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\r
+*/\r
+package com.swabunga.spell.engine;\r
+\r
+/**\r
+ * An interface for all Transformators - which take a dictionary word and converts into its\r
+ * phonetic hash. These phonetic hashes are useful for determining what other words are\r
+ * similar to it, and then list those words as suggestions.\r
+ *\r
+ * @author Robert Gustavsson (robert@lindesign.se)\r
+ */\r
+public interface Transformator {\r
+\r
+ /**\r
+ * Take the given word, and return the best phonetic hash for it.\r
+ * @param word the word to transform\r
+ * @return the phonetic transformation of the word\r
+ */\r
+ public String transform(String word);\r
+\r
+ /**\r
+ * gets the list of characters that should be swapped in to the misspelled word\r
+ * in order to try to find more suggestions.\r
+ * In general, this list represents all of the unique phonetic characters\r
+ * for this Transformator.\r
+ * <p/>\r
+ * The replace list is used in the getSuggestions method.\r
+ * All of the letters in the misspelled word are replaced with the characters from\r
+ * this list to try and generate more suggestions, which implies l*n tries,\r
+ * if l is the size of the string, and n is the size of this list.\r
+ * <p/>\r
+ * In addition to that, each of these letters is added to the misspelled word.\r
+ * <p/>\r
+ * @return char[] misspelled words should try replacing with these characters to get more suggestions\r
+ */\r
+ public char[] getReplaceList();\r
+}\r