#include "third_party/blink/renderer/core/editing/iterators/character_iterator.h"
#include "third_party/blink/renderer/core/core_export.h"
#include "third_party/blink/renderer/core/editing/ephemeral_range.h"
namespace blink {
template <typename Strategy>
CharacterIteratorAlgorithm<Strategy>::CharacterIteratorAlgorithm(
const PositionTemplate<Strategy>& start,
const PositionTemplate<Strategy>& end,
const TextIteratorBehavior& behavior)
: … { … }
template <typename Strategy>
CharacterIteratorAlgorithm<Strategy>::CharacterIteratorAlgorithm(
const EphemeralRangeTemplate<Strategy>& range,
const TextIteratorBehavior& behavior)
: … { … }
template <typename Strategy>
void CharacterIteratorAlgorithm<Strategy>::Initialize() { … }
template <typename Strategy>
const Document& CharacterIteratorAlgorithm<Strategy>::OwnerDocument() const { … }
template <typename Strategy>
const Node& CharacterIteratorAlgorithm<Strategy>::CurrentContainer() const { … }
template <typename Strategy>
int CharacterIteratorAlgorithm<Strategy>::StartOffset() const { … }
template <typename Strategy>
int CharacterIteratorAlgorithm<Strategy>::EndOffset() const { … }
template <typename Strategy>
PositionTemplate<Strategy>
CharacterIteratorAlgorithm<Strategy>::GetPositionBefore() const { … }
template <typename Strategy>
PositionTemplate<Strategy>
CharacterIteratorAlgorithm<Strategy>::GetPositionAfter() const { … }
template <typename Strategy>
PositionTemplate<Strategy> CharacterIteratorAlgorithm<Strategy>::StartPosition()
const { … }
template <typename Strategy>
PositionTemplate<Strategy> CharacterIteratorAlgorithm<Strategy>::EndPosition()
const { … }
template <typename Strategy>
void CharacterIteratorAlgorithm<Strategy>::Advance(int count) { … }
template <typename Strategy>
EphemeralRangeTemplate<Strategy>
CharacterIteratorAlgorithm<Strategy>::CalculateCharacterSubrange(int offset,
int length) { … }
EphemeralRange CalculateCharacterSubrange(const EphemeralRange& range,
int character_offset,
int character_count) { … }
template class CORE_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingStrategy>;
template class CORE_TEMPLATE_EXPORT
CharacterIteratorAlgorithm<EditingInFlatTreeStrategy>;
}