#include "third_party/blink/renderer/core/layout/inline/abstract_inline_text_box.h"
#include "third_party/blink/renderer/core/accessibility/ax_object_cache.h"
#include "third_party/blink/renderer/core/layout/inline/fragment_item.h"
#include "third_party/blink/renderer/core/layout/inline/fragment_items.h"
#include "third_party/blink/renderer/core/layout/inline/inline_break_token.h"
#include "third_party/blink/renderer/core/layout/inline/inline_cursor.h"
#include "third_party/blink/renderer/core/layout/logical_box_fragment.h"
#include "third_party/blink/renderer/platform/fonts/character_range.h"
#include "third_party/blink/renderer/platform/fonts/shaping/shape_result_buffer.h"
#include "third_party/blink/renderer/platform/fonts/shaping/shape_result_view.h"
#include "third_party/blink/renderer/platform/text/text_break_iterator.h"
namespace blink {
namespace {
wtf_size_t ItemIndex(const InlineCursor& cursor) { … }
class AbstractInlineTextBoxCache final { … };
AbstractInlineTextBoxCache* AbstractInlineTextBoxCache::s_instance_ = …;
}
AbstractInlineTextBox* AbstractInlineTextBox::GetOrCreate(
const InlineCursor& cursor) { … }
void AbstractInlineTextBox::WillDestroy(const InlineCursor& cursor) { … }
AbstractInlineTextBox::AbstractInlineTextBox(const InlineCursor& cursor)
: … { … }
AbstractInlineTextBox::~AbstractInlineTextBox() { … }
void AbstractInlineTextBox::Trace(Visitor* visitor) const { … }
void AbstractInlineTextBox::Detach() { … }
LayoutText* AbstractInlineTextBox::GetFirstLetterPseudoLayoutText() const { … }
InlineCursor AbstractInlineTextBox::GetCursor() const { … }
InlineCursor AbstractInlineTextBox::GetCursorOnLine() const { … }
String AbstractInlineTextBox::GetTextContent() const { … }
bool AbstractInlineTextBox::NeedsTrailingSpace() const { … }
AbstractInlineTextBox* AbstractInlineTextBox::NextInlineTextBox() const { … }
PhysicalRect AbstractInlineTextBox::LocalBounds() const { … }
unsigned AbstractInlineTextBox::Len() const { … }
unsigned AbstractInlineTextBox::TextOffsetInFormattingContext(
unsigned offset) const { … }
PhysicalDirection AbstractInlineTextBox::GetDirection() const { … }
Node* AbstractInlineTextBox::GetNode() const { … }
AXObjectCache* AbstractInlineTextBox::ExistingAXObjectCache() const { … }
void AbstractInlineTextBox::CharacterWidths(Vector<float>& widths) const { … }
void AbstractInlineTextBox::GetWordBoundaries(
Vector<WordBoundaries>& words) const { … }
void AbstractInlineTextBox::GetWordBoundariesForText(
Vector<WordBoundaries>& words,
const String& text) { … }
String AbstractInlineTextBox::GetText() const { … }
bool AbstractInlineTextBox::IsFirst() const { … }
bool AbstractInlineTextBox::IsLast() const { … }
AbstractInlineTextBox* AbstractInlineTextBox::NextOnLine() const { … }
AbstractInlineTextBox* AbstractInlineTextBox::PreviousOnLine() const { … }
bool AbstractInlineTextBox::IsLineBreak() const { … }
}