lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uwe Schindler (JIRA)" <>
Subject [jira] Commented: (LUCENE-2401) Improve performance of CharTermAttribute(Impl) and also fully implement Appendable
Date Sun, 18 Apr 2010 21:59:49 GMT


Uwe Schindler commented on LUCENE-2401:

bq. do we need the specialized case for CharTermAttribute really

Why not, maybe you do copyAttributes to put tokens away and then you want to append them?
In general, StringBuilder also has a specialized append() method for itsself. So it does not
hurt and it is tested. Its somehow a duplicate to copyTo() [except it appends], but this one
only copies the buffer and not the whole attribute (die, Token, die!).

> Improve performance of CharTermAttribute(Impl) and also fully implement Appendable
> ----------------------------------------------------------------------------------
>                 Key: LUCENE-2401
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Analysis
>            Reporter: Uwe Schindler
>            Assignee: Uwe Schindler
>             Fix For: 3.1
>         Attachments: LUCENE-2401.patch, LUCENE-2401.patch
> The Appendable.append(CharSequence) method in CharTermAttributes is good for general
use. But like StringBuilder has for some common use cases specialized methods, this does the
same and adds separate append methods for String, StringBuilder and CharTermAttribute itsself.
This methods enable the compiler to directly link the specialized methods and don't use the
instanceof checks. The unspecialized method only does the instanceof checks for longer CharSequences
(>8 chars), else it simply iterates.
> This patch also fixes the required special "null" handling. append() methods are required
by Appendable to append "null", if the argument is null. I dont like this, but its required.
Maybe we should document, that we dont dont support it. Otherwise, JDK's formatter fails with
formatting null.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message