47 #if !UCONFIG_NO_REGULAR_EXPRESSIONS
65 class RuleBasedBreakIterator;
71 #ifndef U_HIDE_INTERNAL_API
80 #undef RegexPatternDump
81 #define RegexPatternDump(pat)
339 virtual uint32_t flags()
const;
495 int32_t destCapacity,
537 virtual int32_t split(
UText *input,
539 int32_t destCapacity,
555 static UClassID U_EXPORT2 getStaticClassID();
565 UVector64 *fCompiledPat;
570 Regex8BitSet *fSets8;
576 int32_t fMinMatchLen;
588 UVector32 *fGroupMap;
591 int32_t fMaxCaptureDigits;
596 Regex8BitSet *fStaticSets8;
600 int32_t fInitialStringIdx;
601 int32_t fInitialStringLen;
604 Regex8BitSet *fInitialChars8;
605 UBool fNeedsAltInput;
607 friend class RegexCompile;
609 friend class RegexCImpl;
617 void dumpOp(int32_t index)
const;
810 virtual UBool find();
857 virtual int32_t groupCount()
const;
891 virtual UText *group(int32_t groupNum,
UText *dest, int64_t &group_len,
UErrorCode &status)
const;
918 virtual int32_t start(
UErrorCode &status)
const;
927 virtual int64_t start64(
UErrorCode &status)
const;
943 virtual int32_t start(int32_t group,
UErrorCode &status)
const;
958 virtual int64_t start64(int32_t group,
UErrorCode &status)
const;
974 virtual int32_t end(
UErrorCode &status)
const;
989 virtual int64_t end64(
UErrorCode &status)
const;
1009 virtual int32_t end(int32_t group,
UErrorCode &status)
const;
1028 virtual int64_t end64(int32_t group,
UErrorCode &status)
const;
1155 virtual UText *inputText()
const;
1201 virtual RegexMatcher ®ion(int64_t regionStart, int64_t regionLimit, int64_t startIndex,
UErrorCode &status);
1211 virtual int32_t regionStart()
const;
1221 virtual int64_t regionStart64()
const;
1232 virtual int32_t regionEnd()
const;
1242 virtual int64_t regionEnd64()
const;
1252 virtual UBool hasTransparentBounds()
const;
1282 virtual UBool hasAnchoringBounds()
const;
1312 virtual UBool hitEnd()
const;
1323 virtual UBool requireEnd()
const;
1542 int32_t destCapacity,
1569 virtual int32_t split(
UText *input,
1571 int32_t destCapacity,
1595 virtual void setTimeLimit(int32_t limit,
UErrorCode &status);
1603 virtual int32_t getTimeLimit()
const;
1626 virtual void setStackLimit(int32_t limit,
UErrorCode &status);
1635 virtual int32_t getStackLimit()
const;
1652 const void *context,
1667 const void *&context,
1685 const void *context,
1700 const void *&context,
1703 #ifndef U_HIDE_INTERNAL_API
1709 void setTrace(
UBool state);
1717 static UClassID U_EXPORT2 getStaticClassID();
1737 friend class RegexCImpl;
1739 #ifndef U_HIDE_INTERNAL_API
1741 void resetPreserveRegion();
1750 inline void backTrack(int64_t &inputIdx, int32_t &patIdx);
1751 UBool isWordBoundary(int64_t pos);
1752 UBool isUWordBoundary(int64_t pos);
1753 REStackFrame *resetStack();
1754 inline REStackFrame *StateSave(REStackFrame *fp, int64_t savePatIdx,
UErrorCode &status);
1758 int64_t appendGroup(int32_t groupNum,
UText *dest,
UErrorCode &status)
const;
1760 UBool findUsingChunk();
1762 UBool isChunkWordBoundary(int32_t pos);
1770 UText *fAltInputText;
1772 int64_t fInputLength;
1775 int64_t fRegionStart;
1776 int64_t fRegionLimit;
1778 int64_t fAnchorStart;
1779 int64_t fAnchorLimit;
1785 int64_t fActiveStart;
1786 int64_t fActiveLimit;
1790 UBool fTransparentBounds;
1791 UBool fAnchoringBounds;
1794 int64_t fMatchStart;
1798 int64_t fLastMatchEnd;
1800 int64_t fAppendPosition;
1809 REStackFrame *fFrame;
1814 int64_t fSmallData[8];
1820 int32_t fTickCounter;
1825 int32_t fStackLimit;
1830 const void *fCallbackContext;
1834 const void *fFindProgressCallbackContext;
1837 UBool fInputUniStrMaybeMutable;
1848 #endif // UCONFIG_NO_REGULAR_EXPRESSIONS