[ https://issues.apache.org/jira/browse/LUCENE-1217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577591#action_12577591 ]
Eks Dev commented on LUCENE-1217: --------------------------------- thanks fof looking into it! Subclassing now with backwards compatibility would be clumsy, I was thinking about it but could not find clean way to make it. >>Or we could wait until Java 5 (3.0) and use real enums? yes, that is ultimate solution, but my line of thoughts was that "poor man's enum"->java 5 enum migration would be trivial later... but do not change working code kicks-in here :) > use isBinary cached variable instead of instanceof in Filed > ----------------------------------------------------------- > > Key: LUCENE-1217 > URL: https://issues.apache.org/jira/browse/LUCENE-1217 > Project: Lucene - Java > Issue Type: Improvement > Components: Other > Reporter: Eks Dev > Assignee: Michael McCandless > Priority: Trivial > Attachments: LUCENE-1217.patch > > > Filed class can hold three types of values, > See: AbstractField.java protected Object fieldsData = null; > currently, mainly RTTI (instanceof) is used to determine the type of the > value stored in particular instance of the Field, but for binary value we > have mixed RTTI and cached variable "boolean isBinary" > This patch makes consistent use of cached variable isBinary. > Benefit: consistent usage of method to determine run-time type for binary > case (reduces chance to get out of sync on cached variable). It should be > slightly faster as well. > Thinking aloud: > Would it not make sense to maintain type with some integer/byte"poor man's > enum" (Interface with a couple of constants) > code:java{ > public static final interface Type{ > public static final byte BOOLEAN = 0; > public static final byte STRING = 1; > public static final byte READER = 2; > .... > } > } > and use that instead of isBinary + instanceof? -- 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: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]