net.sf.saxon.value
public class StringValue extends AtomicValue
Nested Class Summary | |
---|---|
class | StringValue.CharacterIterator
CharacterIterator is used to iterate over the characters in a string,
returning them as integers representing the Unicode code-point. |
Field Summary | |
---|---|
static StringValue | EMPTY_STRING |
protected int | length |
static StringValue | SINGLE_SPACE |
protected CharSequence | value |
Constructor Summary | |
---|---|
protected | StringValue()
Protected constructor for use by subtypes |
StringValue(CharSequence value)
Constructor. |
Method Summary | |
---|---|
static CharSequence | contract(int[] codes, int used)
Contract an array of integers containing Unicode codepoints into a Java string |
AtomicValue | convertPrimitive(BuiltInAtomicType requiredType, boolean validate, XPathContext context)
Convert a value to another primitive data type, with control over how validation is
handled. |
static AtomicValue | convertStringToAtomicType(CharSequence value, AtomicType targetType, NameChecker checker)
Convert the value to a given type. |
static AtomicValue | convertStringToBuiltInType(CharSequence value, BuiltInAtomicType requiredType, NameChecker checker)
Convert a string value to another built-in data type, with control over how validation is
handled. |
Object | convertToJava(Class target, XPathContext context)
Convert to Java object (for passing to external functions) |
boolean | effectiveBooleanValue(XPathContext context) |
boolean | equals(Object other)
Determine if two StringValues are equal, according to XML Schema rules. |
static int[] | expand(CharSequence s)
Expand a string containing surrogate pairs into an array of 32-bit characters |
ItemType | getItemType(TypeHierarchy th)
Return the type of the expression |
int | getStringLength()
Get the length of this string, as defined in XPath. |
static int | getStringLength(CharSequence s)
Get the length of a string, as defined in XPath. |
String | getStringValue()
Get the string value as a String |
CharSequence | getStringValueCS()
Get the value of the item as a CharSequence. |
int | hashCode() |
SequenceIterator | iterateCharacters()
Iterate over a string, returning a sequence of integers representing the Unicode code-point values |
static StringValue | makeStringValue(CharSequence value)
Factory method. |
boolean | schemaEquals(Value obj)
Compare two values for equality. |
String | toString() |
Parameters: value the String value. Null is taken as equivalent to "".
Parameters: requiredType type code of the required atomic type validate true if validation is required. If set to false, the caller guarantees that the value is valid for the target data type, and that further validation is therefore not required. Note that a validation failure may be reported even if validation was not requested. context
Returns: the result of the conversion, if successful. If unsuccessful, the value returned will be a ValidationErrorValue. The caller must check for this condition. No exception is thrown, instead the exception will be encapsulated within the ErrorValue.
Parameters: targetType the type to which the value is to be converted checker a NameChecker if validation is required, null if the caller already knows that the value is valid
Returns: the value after conversion if successful; or a ValidationErrorValue if conversion failed. The caller must check for this condition. Validation may fail even if validation was not requested.
Parameters: value the value to be converted requiredType the required atomic type checker if validation is required, a NameChecker. If set to null, the caller guarantees that the value is valid for the target data type, and that further validation is therefore not required. Note that a validation failure may be reported even if validation was not requested.
Returns: the result of the conversion, if successful. If unsuccessful, the value returned will be a ValidationErrorValue. The caller must check for this condition. No exception is thrown, instead the exception will be encapsulated within the ValidationErrorValue.
Throws: ClassCastException if the values are not comparable
Parameters: th
Returns: Type.STRING (always)
Parameters: s The string whose length is required
Parameters: value the String value. Null is taken as equivalent to "".
Returns: the corresponding StringValue