net.sf.saxon.regex
Class SurrogateRegexTranslator.CharClass

java.lang.Object
  extended by net.sf.saxon.regex.SurrogateRegexTranslator.CharClass
Direct Known Subclasses:
SurrogateRegexTranslator.BackReference, SurrogateRegexTranslator.Complement, SurrogateRegexTranslator.Dot, SurrogateRegexTranslator.SimpleCharClass
Enclosing class:
SurrogateRegexTranslator

protected abstract static class SurrogateRegexTranslator.CharClass
extends java.lang.Object

Object representing a character class


Constructor Summary
protected SurrogateRegexTranslator.CharClass(int containsBmp, int containsNonBmp)
          Create a character class
 
Method Summary
 void addNonBmpRanges(java.util.List ranges)
          Add to a supplied List, ranges of non-BMP characters that are matched by this character class.
 int getContainsBmp()
          Determine whether this character class contains NONE, SOME, or ALL of the BMP characters
 int getContainsNonBmp()
          Determine whether this character class contains NONE, SOME, or ALL of the non-BMP characters
 int getSingleChar()
          If this character class contains a single character, get that character
 void output(FastStringBuffer buf)
          Output a representation of this character class to the supplied buffer
abstract  void outputBmp(FastStringBuffer buf)
          Output a representation of the subset of this character class that's within the BMP, to a supplied buffer
abstract  void outputComplementBmp(FastStringBuffer buf)
          Output a representation of the complement of the subset of this character class that's within the BMP, to a supplied buffer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SurrogateRegexTranslator.CharClass

protected SurrogateRegexTranslator.CharClass(int containsBmp,
                                             int containsNonBmp)
Create a character class

Parameters:
containsBmp - NONE, SOME, or ALL, depending on whether the character class contains all the BMP characters, some of the BMP characters, or none of the BMP characters
containsNonBmp - NONE, SOME, or ALL, depending on whether the character class contains all the non-BMP characters, some of the non-BMP characters, or none of the non-BMP characters
Method Detail

getContainsBmp

public int getContainsBmp()
Determine whether this character class contains NONE, SOME, or ALL of the BMP characters

Returns:
NONE, SOME, or ALL

getContainsNonBmp

public int getContainsNonBmp()
Determine whether this character class contains NONE, SOME, or ALL of the non-BMP characters

Returns:
NONE, SOME, or ALL

output

public final void output(FastStringBuffer buf)
Output a representation of this character class to the supplied buffer

Parameters:
buf - the supplied buffer

outputBmp

public abstract void outputBmp(FastStringBuffer buf)
Output a representation of the subset of this character class that's within the BMP, to a supplied buffer

Parameters:
buf - the supplied buffer

outputComplementBmp

public abstract void outputComplementBmp(FastStringBuffer buf)
Output a representation of the complement of the subset of this character class that's within the BMP, to a supplied buffer

Parameters:
buf - the supplied buffer

getSingleChar

public int getSingleChar()
If this character class contains a single character, get that character

Returns:
the single character matched by this character class, or -1 if it matches multiple characters

addNonBmpRanges

public void addNonBmpRanges(java.util.List ranges)
Add to a supplied List, ranges of non-BMP characters that are matched by this character class. Default implementation does nothing.

Parameters:
ranges - a List to which this method will add zero or more Range objects denoting ranges of non-BMP characters


Copyright (c) Saxonica Limited. All rights reserved.