Top Description Inners Constructors Methods
com.ibm.icu.impl

public Class FormattedValueStringBuilderImpl

extends Object
Class Inheritance
Imports
java.text.AttributedCharacterIterator, .AttributedString, .FieldPosition, .Format.Field, com.ibm.icu.text.ConstrainedFieldPosition, .ListFormatter, .NumberFormat, .UFormat, .UnicodeSet

Implementation of FormattedValue based on FormattedStringBuilder. The implementation currently revolves around numbers and number fields. However, it can be generalized in the future when there is a need. In C++, this implements FormattedValue. In Java, it is a stateless collection of static functions to avoid having to use nested objects.
Author
sffc (Shane Carr)

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
public static class
FormattedValueStringBuilderImpl.SpanFieldPlaceholder

Placeholder field used for calculating spans.

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static void
applySpanRange(FormattedStringBuilder self, UFormat.SpanField spanField, Object value, int start, int end)

Upgrade a range of a string to a span field.

public static int

Returns:

The index, or -1 if not found.
findSpan
(FormattedStringBuilder self, Object
The value of the span field to search for.
value
)

Finds the index at which a span field begins.

private static boolean
private static boolean
private static boolean
public static boolean
public static boolean

Returns:

See FormattedValue#nextPosition.
nextPosition
(FormattedStringBuilder self, ConstrainedFieldPosition
The argument passed to the public API.
cfpos
,
Format.Field
Optional. If non-null, apply this field to the entire numeric portion of the string.
numericField
)

Implementation of nextPosition consistent with the contract of FormattedValue.

public static AttributedCharacterIterator
private static int
private static int
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

FormattedValueStringBuilderImplback to summary
public FormattedValueStringBuilderImpl()

Method Detail

applySpanRangeback to summary
public static void applySpanRange(FormattedStringBuilder self, UFormat.SpanField spanField, Object value, int start, int end)

Upgrade a range of a string to a span field. Similar to appendSpanInfo in ICU4C.

findSpanback to summary
public static int findSpan(FormattedStringBuilder self, Object value)

Finds the index at which a span field begins.

Parameters
value:Object

The value of the span field to search for.

Returns:int

The index, or -1 if not found.

isIntOrGroupback to summary
private static boolean isIntOrGroup(Object field)
isNumericFieldback to summary
private static boolean isNumericField(Object field)
isTrimmableback to summary
private static boolean isTrimmable(Object field)
nextFieldPositionback to summary
public static boolean nextFieldPosition(FormattedStringBuilder self, FieldPosition fp)
nextPositionback to summary
public static boolean nextPosition(FormattedStringBuilder self, ConstrainedFieldPosition cfpos, Format.Field numericField)

Implementation of nextPosition consistent with the contract of FormattedValue.

Parameters
cfpos:ConstrainedFieldPosition

The argument passed to the public API.

numericField:Format.Field

Optional. If non-null, apply this field to the entire numeric portion of the string.

Returns:boolean

See FormattedValue#nextPosition.

toCharacterIteratorback to summary
public static AttributedCharacterIterator toCharacterIterator(FormattedStringBuilder self, Format.Field numericField)
trimBackback to summary
private static int trimBack(FormattedStringBuilder self, int limit)
trimFrontback to summary
private static int trimFront(FormattedStringBuilder self, int start)
com.ibm.icu.impl back to summary

pack-priv Class FormattedValueStringBuilderImpl.NullField

extends Field
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv static final FormattedValueStringBuilderImpl.NullField
private static final long

Constructor Summary

AccessConstructor and Description
private

Field Detail

ENDback to summary
pack-priv static final FormattedValueStringBuilderImpl.NullField END
serialVersionUIDback to summary
private static final long serialVersionUID

Hides java.text.Format.Field.serialVersionUID.

Constructor Detail

NullFieldback to summary
private NullField(String name)
com.ibm.icu.impl back to summary

public Class FormattedValueStringBuilderImpl.SpanFieldPlaceholder

extends Object
implements FieldWrapper
Class Inheritance
  • java.lang.Object
  • com.ibm.icu.impl.FormattedValueStringBuilderImpl.SpanFieldPlaceholder
All Implemented Interfaces
com.ibm.icu.impl.FormattedStringBuilder.FieldWrapper

Placeholder field used for calculating spans. Does not currently support nested fields beyond one level.

Field Summary

Modifier and TypeField and Description
public int
public Format.Field
public UFormat.SpanField
public int
public Object

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public Format.Field
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

lengthback to summary
public int length
normalFieldback to summary
public Format.Field normalField
spanFieldback to summary
public UFormat.SpanField spanField
startback to summary
public int start
valueback to summary
public Object value

Constructor Detail

SpanFieldPlaceholderback to summary
public SpanFieldPlaceholder()

Method Detail

unwrapback to summary
public Format.Field unwrap()

Implements com.ibm.icu.impl.FormattedStringBuilder.FieldWrapper.unwrap.