OSDN Git Service

54b5902b91a685b240f2ea94fb19d36f6a4c778f
[neighbornote/NeighborNote.git] / src / com / swabunga / spell / event / Word.java
1 /*\r
2 Jazzy - a Java library for Spell Checking\r
3 Copyright (C) 2001 Mindaugas Idzelis\r
4 Full text of license can be found in LICENSE.txt\r
5 \r
6 This library is free software; you can redistribute it and/or\r
7 modify it under the terms of the GNU Lesser General Public\r
8 License as published by the Free Software Foundation; either\r
9 version 2.1 of the License, or (at your option) any later version.\r
10 \r
11 This library is distributed in the hope that it will be useful,\r
12 but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
14 Lesser General Public License for more details.\r
15 \r
16 You should have received a copy of the GNU Lesser General Public\r
17 License along with this library; if not, write to the Free Software\r
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\r
19 */\r
20 package com.swabunga.spell.event;\r
21 \r
22 /**\r
23  * Offers basic methods to manipulate a text string representing a word.\r
24  */\r
25 public class Word {\r
26 \r
27   //~ Instance/static variables ...............................................\r
28 \r
29   private int end;\r
30   private int start;\r
31   private String text;\r
32 \r
33   //~ Constructors ............................................................\r
34 \r
35   /**\r
36    * Creates a new Word object.\r
37    *\r
38    * @param text the String representing the word.\r
39    * @param start the start index of the word.\r
40    */\r
41   public Word(String text, int start) {\r
42     this.text = text;\r
43     this.start = start;\r
44     setEnd();\r
45   }\r
46 \r
47   /**\r
48    * Creates a new Word object by cloning an existing Word object.\r
49    *\r
50    * @param w the word object to clone.\r
51    */\r
52   public Word(Word w) {\r
53     this.copy(w);\r
54   }\r
55 \r
56   //~ Methods .................................................................\r
57 \r
58   /**\r
59    * Evaluate the end of word position.\r
60    * @return the end index of the word.\r
61    */\r
62   public int getEnd() {\r
63 \r
64     return end;\r
65   }\r
66 \r
67   /**\r
68    * Set the start index of the word.\r
69    *\r
70    * @param s the start index.\r
71    */\r
72   public void setStart(int s) {\r
73     start = s;\r
74     setEnd();\r
75   }\r
76 \r
77   /**\r
78    * Evaluate the start of word position.\r
79    * @return the start index.\r
80    */\r
81   public int getStart() {\r
82 \r
83     return start;\r
84   }\r
85 \r
86   /**\r
87    * Set the text to a new string value.\r
88    *\r
89    * @param s the new text\r
90    */\r
91   public void setText(String s) {\r
92     text = s;\r
93     setEnd();\r
94   }\r
95 \r
96   /**\r
97    * Supply the text string representing the word\r
98    * @return the String representing the word.\r
99    */\r
100   public String getText() {\r
101 \r
102     return text;\r
103   }\r
104 \r
105   /**\r
106    * Sets the value of this Word to be a copy of another.\r
107    *\r
108    * @param w the Word to copy.\r
109    */\r
110   public void copy(Word w) {\r
111     text = w.toString();\r
112     start = w.getStart();\r
113     setEnd();\r
114   }\r
115 \r
116   /**\r
117    * Evaluate the length of the word.\r
118    * @return the length of the word.\r
119    */\r
120   public int length() {\r
121 \r
122     return text.length();\r
123   }\r
124 \r
125   /**\r
126    * Supply the text representing the word.\r
127    * @return the text representing the word.\r
128    */\r
129   public String toString() {\r
130 \r
131     return text;\r
132   }\r
133 \r
134   /**\r
135    * Set the end index of the word.\r
136    *\r
137    */\r
138   private void setEnd() {\r
139     end = start + text.length();\r
140   }\r
141 }\r