Each instance of this class represents one location in the
puzzle where a letter may go. Each cell's
.text attribute may contain one clue letter, or
UNK_CELL if there is no clue letter there.
Clues are uppercased for the convenience of the person
preparing the puzzle file. Here is the interface:
# - - - - - c l a s s C e l l class Cell(object): '''Represents one character position of the puzzle. Exports: Cell ( coord, text ): [ (coord is a cell location as a Coord instance) and (text is a clue character, or UNK_CELL if the content of this cell is not initially known) -> return a new Cell instance with that location and text, and no associated slots ] .coord: [ as passed to constructor, read-only ] .text: [ as passed to constructor, read-only, uppercased ] .addSlot ( slot ): [ slot is a Slot instance that intersects self -> self := self with slot added to its list of associated slots ] .genSlots(): [ generate the slots associated with self as a sequence of Slot instances, if any ] State/Invariants: .__slotList: [ a list of the Slot instances that intersect self, if any ] '''