### Question:
Cursor { public Matcher matcher(Pattern pattern) { return matcher(0, pattern); } Cursor(TextSegment segment); int getOffset(); int getOffset(int cursorOffset); int toCursorOffset(int documentOffset); char getChar(); char getChar(int offset); boolean hasChar(); String getText(int offset, int endIndex); char getPrevious(); boolean hasPrevious(); boolean hasPrevious(int offset); char getPrevious(int offset); char getNext(); char getNext(int offset); String getTextAtOffset(); String getTextAtOffset(int length); boolean hasNext(); boolean hasNext(int offset); Matcher matcher(Pattern pattern); Matcher matcher(int offset, Pattern pattern); void advance(); void advance(int count); void rewind(int count); void rewind(); Line getLineAtOffset();  }### Answer:
@Test public void matcher() { Cursor cursor = new Cursor(createTextSegment("123")); Matcher matcher = cursor.matcher(Pattern.compile("123")); assertNotNull(matcher); assertTrue(matcher.matches()); matcher = cursor.matcher(2, Pattern.compile("3")); assertNotNull(matcher); assertTrue(matcher.matches()); }