@@ -23,43 +23,41 @@ public class StyledText<S> {
2323 * of {@link org.fxmisc.richtext.GenericStyledArea} and similar classes if you are using this class as the SEG type.
2424 */
2525 public static <S > TextOps <StyledText <S >, S > textOps () {
26- return new TextOps <StyledText <S >, S >() {
27-
28- private final StyledText <S > emptySeg = new StyledText <>("" , null );
26+ return new TextOpsBase <StyledText <S >, S >(new StyledText <>("" , null )) {
2927
3028 @ Override
31- public int length (StyledText <S > styledText ) {
29+ public int realLength (StyledText <S > styledText ) {
3230 return styledText .getText ().length ();
3331 }
3432
3533 @ Override
36- public char charAt (StyledText <S > styledText , int index ) {
37- return styledText == emptySeg ? '\0' : styledText .getText ().charAt (index );
34+ public char realCharAt (StyledText <S > styledText , int index ) {
35+ return styledText .getText ().charAt (index );
3836 }
3937
4038 @ Override
41- public String getText (StyledText <S > styledText ) {
39+ public String realGetText (StyledText <S > styledText ) {
4240 return styledText .getText ();
4341 }
4442
4543 @ Override
46- public StyledText <S > subSequence (StyledText <S > styledText , int start , int end ) {
47- return styledText == emptySeg ? emptySeg : new StyledText <>(styledText .getText ().substring (start , end ), styledText .getStyle ());
44+ public StyledText <S > realSubSequence (StyledText <S > styledText , int start , int end ) {
45+ return new StyledText <>(styledText .getText ().substring (start , end ), styledText .getStyle ());
4846 }
4947
5048 @ Override
51- public StyledText <S > subSequence (StyledText <S > styledText , int start ) {
52- return styledText == emptySeg ? emptySeg : new StyledText <>(styledText .getText ().substring (start ), styledText .getStyle ());
49+ public StyledText <S > realSubSequence (StyledText <S > styledText , int start ) {
50+ return new StyledText <>(styledText .getText ().substring (start ), styledText .getStyle ());
5351 }
5452
5553 @ Override
56- public S getStyle (StyledText <S > styledText ) {
54+ public S realGetStyle (StyledText <S > styledText ) {
5755 return styledText .getStyle ();
5856 }
5957
6058 @ Override
61- public StyledText <S > setStyle (StyledText <S > seg , S style ) {
62- return seg == emptySeg ? emptySeg : seg .setStyle (style );
59+ public StyledText <S > realSetStyle (StyledText <S > seg , S style ) {
60+ return seg .setStyle (style );
6361 }
6462
6563 @ Override
@@ -69,11 +67,6 @@ public Optional<StyledText<S>> join(StyledText<S> left, StyledText<S> right) {
6967 : Optional .empty ();
7068 }
7169
72- @ Override
73- public StyledText <S > createEmpty () {
74- return emptySeg ;
75- }
76-
7770 @ Override
7871 public StyledText <S > create (String text , S style ) {
7972 return new StyledText <>(text , style );
0 commit comments