#include "third_party/blink/renderer/core/editing/iterators/text_iterator_text_state.h"
#include "third_party/blink/renderer/core/dom/text.h"
#include "third_party/blink/renderer/core/editing/editing_utilities.h"
#include "third_party/blink/renderer/core/html/html_element.h"
#include "third_party/blink/renderer/core/layout/layout_object.h"
#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
namespace blink {
namespace {
bool IsTextSecurityNode(const Node& node) { … }
}
TextIteratorTextState::TextIteratorTextState(
const TextIteratorBehavior& behavior)
: … { … }
unsigned TextIteratorTextState::PositionStartOffset() const { … }
unsigned TextIteratorTextState::PositionEndOffset() const { … }
UChar TextIteratorTextState::CharacterAt(unsigned index) const { … }
String TextIteratorTextState::GetTextForTesting() const { … }
void TextIteratorTextState::AppendTextToStringBuilder(
StringBuilder& builder,
unsigned position,
unsigned max_length) const { … }
void TextIteratorTextState::UpdateForReplacedElement(const Node& node) { … }
void TextIteratorTextState::ResetPositionContainerNode(
PositionNodeType node_type,
const Node& node) { … }
void TextIteratorTextState::UpdatePositionOffsets(
const ContainerNode& container_node,
unsigned node_index) const { … }
void TextIteratorTextState::EmitAltText(const HTMLElement& element) { … }
void TextIteratorTextState::EmitChar16AfterNode(UChar code_unit,
const Node& node) { … }
void TextIteratorTextState::EmitChar16AsNode(UChar code_unit,
const Node& node) { … }
void TextIteratorTextState::EmitChar16BeforeChildren(
UChar code_unit,
const ContainerNode& container_node) { … }
void TextIteratorTextState::EmitChar16BeforeNode(UChar code_unit,
const Node& node) { … }
void TextIteratorTextState::EmitChar16Before(UChar code_unit,
const Text& text_node,
unsigned offset) { … }
void TextIteratorTextState::EmitReplacmentCodeUnit(UChar code_unit,
const Text& text_node,
unsigned offset) { … }
void TextIteratorTextState::PopulateStringBufferFromChar16(UChar code_unit) { … }
void TextIteratorTextState::EmitText(const Text& text_node,
unsigned position_start_offset,
unsigned position_end_offset,
const String& string,
unsigned text_start_offset,
unsigned text_end_offset) { … }
void TextIteratorTextState::PopulateStringBuffer(const String& text,
unsigned text_start_offset,
unsigned text_end_offset) { … }
void TextIteratorTextState::SetTextNodePosition(const Text& text_node,
unsigned position_start_offset,
unsigned position_end_offset) { … }
}