Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * Copyright (c) 2020-2021, the SerenityOS developers. |
3 | | * |
4 | | * SPDX-License-Identifier: BSD-2-Clause |
5 | | */ |
6 | | |
7 | | #pragma once |
8 | | |
9 | | #include <AK/Array.h> |
10 | | #include <AK/Assertions.h> |
11 | | #include <AK/Iterator.h> |
12 | | #include <AK/TypedTransfer.h> |
13 | | #include <AK/Types.h> |
14 | | |
15 | | namespace AK { |
16 | | |
17 | | namespace Detail { |
18 | | |
19 | | template<typename T> |
20 | | class Span { |
21 | | public: |
22 | 4.02M | ALWAYS_INLINE constexpr Span() = default; AK::Detail::Span<float>::Span() Line | Count | Source | 22 | 766k | ALWAYS_INLINE constexpr Span() = default; |
AK::Detail::Span<float const>::Span() Line | Count | Source | 22 | 155k | ALWAYS_INLINE constexpr Span() = default; |
AK::Detail::Span<AK::BigEndian<short> const>::Span() Line | Count | Source | 22 | 602 | ALWAYS_INLINE constexpr Span() = default; |
Unexecuted instantiation: AK::Detail::Span<unsigned short const>::Span() Unexecuted instantiation: AK::Detail::Span<TimeZone::TimeZoneIdentifier const>::Span() AK::Detail::Span<unsigned int const>::Span() Line | Count | Source | 22 | 1 | ALWAYS_INLINE constexpr Span() = default; |
Unexecuted instantiation: AK::Detail::Span<Unicode::BlockName const>::Span() AK::Detail::Span<Unicode::SpecialCasing const>::Span() Line | Count | Source | 22 | 18.0k | ALWAYS_INLINE constexpr Span() = default; |
Unexecuted instantiation: AK::Detail::Span<Unicode::CaseFolding const>::Span() AK::Detail::Span<JS::Value>::Span() Line | Count | Source | 22 | 122 | ALWAYS_INLINE constexpr Span() = default; |
Unexecuted instantiation: AK::Detail::Span<JS::Value const>::Span() Unexecuted instantiation: AK::Detail::Span<AK::String const>::Span() Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span() Unexecuted instantiation: AK::Detail::Span<unsigned long const>::Span() Unexecuted instantiation: AK::Detail::Span<signed char const>::Span() Unexecuted instantiation: AK::Detail::Span<short const>::Span() Unexecuted instantiation: AK::Detail::Span<int const>::Span() Unexecuted instantiation: AK::Detail::Span<long const>::Span() Unexecuted instantiation: AK::Detail::Span<double const>::Span() Unexecuted instantiation: AK::Detail::Span<unsigned short>::Span() Unexecuted instantiation: AK::Detail::Span<unsigned int>::Span() Unexecuted instantiation: AK::Detail::Span<unsigned long>::Span() Unexecuted instantiation: AK::Detail::Span<signed char>::Span() Unexecuted instantiation: AK::Detail::Span<short>::Span() Unexecuted instantiation: AK::Detail::Span<int>::Span() Unexecuted instantiation: AK::Detail::Span<long>::Span() Unexecuted instantiation: AK::Detail::Span<double>::Span() Unexecuted instantiation: AK::Detail::Span<Locale::PluralCategory const>::Span() Unexecuted instantiation: AK::Detail::Span<AK::StringView>::Span() Unexecuted instantiation: AK::Detail::Span<AK::OptionParser::Option const>::Span() Unexecuted instantiation: AK::Detail::Span<Web::Painting::BorderRadiiClip const>::Span() AK::Detail::Span<bool>::Span() Line | Count | Source | 22 | 3.08M | ALWAYS_INLINE constexpr Span() = default; |
|
23 | | |
24 | | ALWAYS_INLINE constexpr Span(T* values, size_t size) |
25 | 5.19G | : m_values(values) |
26 | 5.19G | , m_size(size) |
27 | 5.19G | { |
28 | 5.19G | } AK::Detail::Span<AK::Vector<unsigned char, 0ul> const>::Span(AK::Vector<unsigned char, 0ul> const*, unsigned long) Line | Count | Source | 25 | 219k | : m_values(values) | 26 | 219k | , m_size(size) | 27 | 219k | { | 28 | 219k | } |
AK::Detail::Span<Gfx::JBIG2::Code const>::Span(Gfx::JBIG2::Code const*, unsigned long) Line | Count | Source | 25 | 74 | : m_values(values) | 26 | 74 | , m_size(size) | 27 | 74 | { | 28 | 74 | } |
Unexecuted instantiation: AK::Detail::Span<AK::NonnullRefPtr<Gfx::Symbol> const>::Span(AK::NonnullRefPtr<Gfx::Symbol> const*, unsigned long) AK::Detail::Span<Gfx::JBIG2::AdaptiveTemplatePixel const>::Span(Gfx::JBIG2::AdaptiveTemplatePixel const*, unsigned long) Line | Count | Source | 25 | 73.0M | : m_values(values) | 26 | 73.0M | , m_size(size) | 27 | 73.0M | { | 28 | 73.0M | } |
AK::Detail::Span<Gfx::JBIG2::Code>::Span(Gfx::JBIG2::Code*, unsigned long) Line | Count | Source | 25 | 45 | : m_values(values) | 26 | 45 | , m_size(size) | 27 | 45 | { | 28 | 45 | } |
AK::Detail::Span<unsigned short const>::Span(unsigned short const*, unsigned long) Line | Count | Source | 25 | 49.9k | : m_values(values) | 26 | 49.9k | , m_size(size) | 27 | 49.9k | { | 28 | 49.9k | } |
AK::Detail::Span<unsigned int const>::Span(unsigned int const*, unsigned long) Line | Count | Source | 25 | 102 | : m_values(values) | 26 | 102 | , m_size(size) | 27 | 102 | { | 28 | 102 | } |
AK::Detail::Span<float const>::Span(float const*, unsigned long) Line | Count | Source | 25 | 77.8M | : m_values(values) | 26 | 77.8M | , m_size(size) | 27 | 77.8M | { | 28 | 77.8M | } |
CCITTDecoder.cpp:AK::Detail::Span<Gfx::CCITT::(anonymous namespace)::Change>::Span(Gfx::CCITT::(anonymous namespace)::Change*, unsigned long) Line | Count | Source | 25 | 85.3k | : m_values(values) | 26 | 85.3k | , m_size(size) | 27 | 85.3k | { | 28 | 85.3k | } |
AK::Detail::Span<Gfx::JPEG2000::SubBand const>::Span(Gfx::JPEG2000::SubBand const*, unsigned long) Line | Count | Source | 25 | 17.1k | : m_values(values) | 26 | 17.1k | , m_size(size) | 27 | 17.1k | { | 28 | 17.1k | } |
AK::Detail::Span<float>::Span(float*, unsigned long) Line | Count | Source | 25 | 8.04M | : m_values(values) | 26 | 8.04M | , m_size(size) | 27 | 8.04M | { | 28 | 8.04M | } |
Unexecuted instantiation: AK::Detail::Span<Gfx::ChannelInfo const>::Span(Gfx::ChannelInfo const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Gfx::ChannelInfo>::Span(Gfx::ChannelInfo*, unsigned long) AK::Detail::Span<int>::Span(int*, unsigned long) Line | Count | Source | 25 | 36.5M | : m_values(values) | 26 | 36.5M | , m_size(size) | 27 | 36.5M | { | 28 | 36.5M | } |
Unexecuted instantiation: AK::Detail::Span<Gfx::Channel>::Span(Gfx::Channel*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Gfx::Frame>::Span(Gfx::Frame*, unsigned long) AK::Detail::Span<unsigned int>::Span(unsigned int*, unsigned long) Line | Count | Source | 25 | 743 | : m_values(values) | 26 | 743 | , m_size(size) | 27 | 743 | { | 28 | 743 | } |
AK::Detail::Span<Gfx::Color const>::Span(Gfx::Color const*, unsigned long) Line | Count | Source | 25 | 1.27k | : m_values(values) | 26 | 1.27k | , m_size(size) | 27 | 1.27k | { | 28 | 1.27k | } |
AK::Detail::Span<Gfx::TinyVGDecodedImageData::DrawCommand const>::Span(Gfx::TinyVGDecodedImageData::DrawCommand const*, unsigned long) Line | Count | Source | 25 | 730 | : m_values(values) | 26 | 730 | , m_size(size) | 27 | 730 | { | 28 | 730 | } |
AK::Detail::Span<Gfx::Line<float> const>::Span(Gfx::Line<float> const*, unsigned long) Line | Count | Source | 25 | 1.77M | : m_values(values) | 26 | 1.77M | , m_size(size) | 27 | 1.77M | { | 28 | 1.77M | } |
AK::Detail::Span<Gfx::Color>::Span(Gfx::Color*, unsigned long) Line | Count | Source | 25 | 1.27k | : m_values(values) | 26 | 1.27k | , m_size(size) | 27 | 1.27k | { | 28 | 1.27k | } |
AK::Detail::Span<Gfx::ColorStop const>::Span(Gfx::ColorStop const*, unsigned long) Line | Count | Source | 25 | 11.5M | : m_values(values) | 26 | 11.5M | , m_size(size) | 27 | 11.5M | { | 28 | 11.5M | } |
Unexecuted instantiation: AK::Detail::Span<AK::BigEndian<unsigned int> const>::Span(AK::BigEndian<unsigned int> const*, unsigned long) AK::Detail::Span<OpenType::Hmtx::LongHorMetric const>::Span(OpenType::Hmtx::LongHorMetric const*, unsigned long) Line | Count | Source | 25 | 602 | : m_values(values) | 26 | 602 | , m_size(size) | 27 | 602 | { | 28 | 602 | } |
AK::Detail::Span<AK::BigEndian<short> const>::Span(AK::BigEndian<short> const*, unsigned long) Line | Count | Source | 25 | 393 | : m_values(values) | 26 | 393 | , m_size(size) | 27 | 393 | { | 28 | 393 | } |
AK::Detail::Span<OpenType::Name::NameRecord const>::Span(OpenType::Name::NameRecord const*, unsigned long) Line | Count | Source | 25 | 843 | : m_values(values) | 26 | 843 | , m_size(size) | 27 | 843 | { | 28 | 843 | } |
AK::Detail::Span<OpenType::CBLC::BitmapSize const>::Span(OpenType::CBLC::BitmapSize const*, unsigned long) Line | Count | Source | 25 | 242 | : m_values(values) | 26 | 242 | , m_size(size) | 27 | 242 | { | 28 | 242 | } |
Unexecuted instantiation: AK::Detail::Span<OpenType::EBLC::IndexSubTableArray const>::Span(OpenType::EBLC::IndexSubTableArray const*, unsigned long) AK::Detail::Span<AK::BigEndian<unsigned short> const>::Span(AK::BigEndian<unsigned short> const*, unsigned long) Line | Count | Source | 25 | 606 | : m_values(values) | 26 | 606 | , m_size(size) | 27 | 606 | { | 28 | 606 | } |
AK::Detail::Span<OpenType::Kern::Format0Pair const>::Span(OpenType::Kern::Format0Pair const*, unsigned long) Line | Count | Source | 25 | 824 | : m_values(values) | 26 | 824 | , m_size(size) | 27 | 824 | { | 28 | 824 | } |
AK::Detail::Span<OpenType::ScriptRecord const>::Span(OpenType::ScriptRecord const*, unsigned long) Line | Count | Source | 25 | 659 | : m_values(values) | 26 | 659 | , m_size(size) | 27 | 659 | { | 28 | 659 | } |
AK::Detail::Span<OpenType::FeatureRecord const>::Span(OpenType::FeatureRecord const*, unsigned long) Line | Count | Source | 25 | 623 | : m_values(values) | 26 | 623 | , m_size(size) | 27 | 623 | { | 28 | 623 | } |
AK::Detail::Span<Gfx::Point<float> const>::Span(Gfx::Point<float> const*, unsigned long) Line | Count | Source | 25 | 3.75G | : m_values(values) | 26 | 3.75G | , m_size(size) | 27 | 3.75G | { | 28 | 3.75G | } |
AK::Detail::Span<unsigned long const>::Span(unsigned long const*, unsigned long) Line | Count | Source | 25 | 782M | : m_values(values) | 26 | 782M | , m_size(size) | 27 | 782M | { | 28 | 782M | } |
Unexecuted instantiation: AK::Detail::Span<Gfx::PathSegment::Command const>::Span(Gfx::PathSegment::Command const*, unsigned long) AK::Detail::Span<AK::TypeErasedParameter const>::Span(AK::TypeErasedParameter const*, unsigned long) Line | Count | Source | 25 | 192M | : m_values(values) | 26 | 192M | , m_size(size) | 27 | 192M | { | 28 | 192M | } |
AK::Detail::Span<AK::StringView const>::Span(AK::StringView const*, unsigned long) Line | Count | Source | 25 | 2.41k | : m_values(values) | 26 | 2.41k | , m_size(size) | 27 | 2.41k | { | 28 | 2.41k | } |
AK::Detail::Span<unsigned long>::Span(unsigned long*, unsigned long) Line | Count | Source | 25 | 131M | : m_values(values) | 26 | 131M | , m_size(size) | 27 | 131M | { | 28 | 131M | } |
Unexecuted instantiation: AK::Detail::Span<addrinfo const>::Span(addrinfo const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<pollfd>::Span(pollfd*, unsigned long) Unexecuted instantiation: EventLoopImplementationUnix.cpp:AK::Detail::Span<Core::(anonymous namespace)::EventLoopTimeout* const>::Span(Core::(anonymous namespace)::EventLoopTimeout* const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Unicode::BlockName>::Span(Unicode::BlockName*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Unicode::BlockName const>::Span(Unicode::BlockName const*, unsigned long) AK::Detail::Span<Unicode::SpecialCasing const>::Span(Unicode::SpecialCasing const*, unsigned long) Line | Count | Source | 25 | 4.83k | : m_values(values) | 26 | 4.83k | , m_size(size) | 27 | 4.83k | { | 28 | 4.83k | } |
Unexecuted instantiation: AK::Detail::Span<Unicode::CaseFolding const>::Span(Unicode::CaseFolding const*, unsigned long) AK::Detail::Span<short const>::Span(short const*, unsigned long) Line | Count | Source | 25 | 5.70k | : m_values(values) | 26 | 5.70k | , m_size(size) | 27 | 5.70k | { | 28 | 5.70k | } |
AK::Detail::Span<char const>::Span(char const*, unsigned long) Line | Count | Source | 25 | 252 | : m_values(values) | 26 | 252 | , m_size(size) | 27 | 252 | { | 28 | 252 | } |
AK::Detail::Span<AK::Variant<XML::ElementDeclaration, XML::AttributeListDeclaration, AK::Variant<XML::GEDeclaration, XML::PEDeclaration>, XML::NotationDeclaration> const>::Span(AK::Variant<XML::ElementDeclaration, XML::AttributeListDeclaration, AK::Variant<XML::GEDeclaration, XML::PEDeclaration>, XML::NotationDeclaration> const*, unsigned long) Line | Count | Source | 25 | 1.95k | : m_values(values) | 26 | 1.95k | , m_size(size) | 27 | 1.95k | { | 28 | 1.95k | } |
Unexecuted instantiation: AK::Detail::Span<JS::Value const>::Span(JS::Value const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::Bytecode::Operand const>::Span(JS::Bytecode::Operand const*, unsigned long) AK::Detail::Span<JS::Value>::Span(JS::Value*, unsigned long) Line | Count | Source | 25 | 48 | : m_values(values) | 26 | 48 | , m_size(size) | 27 | 48 | { | 28 | 48 | } |
AK::Detail::Span<JS::CallExpressionArgument const>::Span(JS::CallExpressionArgument const*, unsigned long) Line | Count | Source | 25 | 1.98k | : m_values(values) | 26 | 1.98k | , m_size(size) | 27 | 1.98k | { | 28 | 1.98k | } |
AK::Detail::Span<JS::Bytecode::ScopedOperand const>::Span(JS::Bytecode::ScopedOperand const*, unsigned long) Line | Count | Source | 25 | 3 | : m_values(values) | 26 | 3 | , m_size(size) | 27 | 3 | { | 28 | 3 | } |
Unexecuted instantiation: AK::Detail::Span<AK::Optional<JS::Bytecode::ScopedOperand> const>::Span(AK::Optional<JS::Bytecode::ScopedOperand> const*, unsigned long) AK::Detail::Span<AK::NonnullRefPtr<JS::Identifier> const>::Span(AK::NonnullRefPtr<JS::Identifier> const*, unsigned long) Line | Count | Source | 25 | 1.32k | : m_values(values) | 26 | 1.32k | , m_size(size) | 27 | 1.32k | { | 28 | 1.32k | } |
AK::Detail::Span<JS::ParserError const>::Span(JS::ParserError const*, unsigned long) Line | Count | Source | 25 | 83 | : m_values(values) | 26 | 83 | , m_size(size) | 27 | 83 | { | 28 | 83 | } |
AK::Detail::Span<JS::CallExpressionArgument>::Span(JS::CallExpressionArgument*, unsigned long) Line | Count | Source | 25 | 990 | : m_values(values) | 26 | 990 | , m_size(size) | 27 | 990 | { | 28 | 990 | } |
Unexecuted instantiation: AK::Detail::Span<JS::DeclarativeEnvironment::Binding>::Span(JS::DeclarativeEnvironment::Binding*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::DeclarativeEnvironment::Binding const>::Span(JS::DeclarativeEnvironment::Binding const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::String const>::Span(AK::String const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Locale::CalendarRangePattern const>::Span(Locale::CalendarRangePattern const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::Intl::PatternPartition const>::Span(JS::Intl::PatternPartition const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::StringView>::Span(AK::StringView*, unsigned long) AK::Detail::Span<int const>::Span(int const*, unsigned long) Line | Count | Source | 25 | 54.9k | : m_values(values) | 26 | 54.9k | , m_size(size) | 27 | 54.9k | { | 28 | 54.9k | } |
Unexecuted instantiation: AK::Detail::Span<signed char const>::Span(signed char const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<long const>::Span(long const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<double const>::Span(double const*, unsigned long) AK::Detail::Span<unsigned short>::Span(unsigned short*, unsigned long) Line | Count | Source | 25 | 55.2M | : m_values(values) | 26 | 55.2M | , m_size(size) | 27 | 55.2M | { | 28 | 55.2M | } |
Unexecuted instantiation: AK::Detail::Span<signed char>::Span(signed char*, unsigned long) AK::Detail::Span<short>::Span(short*, unsigned long) Line | Count | Source | 25 | 1.72M | : m_values(values) | 26 | 1.72M | , m_size(size) | 27 | 1.72M | { | 28 | 1.72M | } |
AK::Detail::Span<long>::Span(long*, unsigned long) Line | Count | Source | 25 | 19.7M | : m_values(values) | 26 | 19.7M | , m_size(size) | 27 | 19.7M | { | 28 | 19.7M | } |
Unexecuted instantiation: AK::Detail::Span<double>::Span(double*, unsigned long) AK::Detail::Span<JS::Position>::Span(JS::Position*, unsigned long) Line | Count | Source | 25 | 599 | : m_values(values) | 26 | 599 | , m_size(size) | 27 | 599 | { | 28 | 599 | } |
Unexecuted instantiation: AK::Detail::Span<JS::ImportEntry const>::Span(JS::ImportEntry const*, unsigned long) AK::Detail::Span<regex::ByteCode>::Span(regex::ByteCode*, unsigned long) Line | Count | Source | 25 | 1.98M | : m_values(values) | 26 | 1.98M | , m_size(size) | 27 | 1.98M | { | 28 | 1.98M | } |
AK::Detail::Span<AK::Vector<unsigned long, 0ul> const>::Span(AK::Vector<unsigned long, 0ul> const*, unsigned long) Line | Count | Source | 25 | 1.21M | : m_values(values) | 26 | 1.21M | , m_size(size) | 27 | 1.21M | { | 28 | 1.21M | } |
Unexecuted instantiation: AK::Detail::Span<regex::CompareTypeAndValuePair const>::Span(regex::CompareTypeAndValuePair const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Locale::PluralCategory const>::Span(Locale::PluralCategory const*, unsigned long) AK::Detail::Span<Audio::Sample>::Span(Audio::Sample*, unsigned long) Line | Count | Source | 25 | 502k | : m_values(values) | 26 | 502k | , m_size(size) | 27 | 502k | { | 28 | 502k | } |
Unexecuted instantiation: AK::Detail::Span<Audio::SeekPoint const>::Span(Audio::SeekPoint const*, unsigned long) AK::Detail::Span<Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanVWXY> const>::Span(Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanVWXY> const*, unsigned long) Line | Count | Source | 25 | 118k | : m_values(values) | 26 | 118k | , m_size(size) | 27 | 118k | { | 28 | 118k | } |
AK::Detail::Span<Audio::MP3::Tables::ScaleFactorBand const>::Span(Audio::MP3::Tables::ScaleFactorBand const*, unsigned long) Line | Count | Source | 25 | 277k | : m_values(values) | 26 | 277k | , m_size(size) | 27 | 277k | { | 28 | 277k | } |
AK::Detail::Span<Shell::AST::Position const>::Span(Shell::AST::Position const*, unsigned long) Line | Count | Source | 25 | 891k | : m_values(values) | 26 | 891k | , m_size(size) | 27 | 891k | { | 28 | 891k | } |
AK::Detail::Span<Shell::AST::Position>::Span(Shell::AST::Position*, unsigned long) Line | Count | Source | 25 | 891k | : m_values(values) | 26 | 891k | , m_size(size) | 27 | 891k | { | 28 | 891k | } |
Unexecuted instantiation: AK::Detail::Span<Shell::AST::VariableDeclarations::Variable const>::Span(Shell::AST::VariableDeclarations::Variable const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::NonnullRefPtr<Shell::AST::Redirection> const>::Span(AK::NonnullRefPtr<Shell::AST::Redirection> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Shell::AST::Command const>::Span(Shell::AST::Command const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::NonnullRefPtr<Shell::AST::Value> const>::Span(AK::NonnullRefPtr<Shell::AST::Value> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::Variant<AK::String, long, Shell::Arithmetic::Operator> >::Span(AK::Variant<AK::String, long, Shell::Arithmetic::Operator>*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::NonnullRefPtr<Shell::AST::Node> const>::Span(AK::NonnullRefPtr<Shell::AST::Node> const*, unsigned long) AK::Detail::Span<Shell::Posix::Token const>::Span(Shell::Posix::Token const*, unsigned long) Line | Count | Source | 25 | 17.5M | : m_values(values) | 26 | 17.5M | , m_size(size) | 27 | 17.5M | { | 28 | 17.5M | } |
AK::Detail::Span<Shell::Posix::Token>::Span(Shell::Posix::Token*, unsigned long) Line | Count | Source | 25 | 17.5M | : m_values(values) | 26 | 17.5M | , m_size(size) | 27 | 17.5M | { | 28 | 17.5M | } |
Unexecuted instantiation: AK::Detail::Span<Shell::Shell::RunnablePath>::Span(Shell::Shell::RunnablePath*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Line::XtermSuggestionDisplay::PageRange>::Span(Line::XtermSuggestionDisplay::PageRange*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::OptionParser::Option const>::Span(AK::OptionParser::Option const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::CSS::Parser::ComponentValue const>::Span(Web::CSS::Parser::ComponentValue const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::CSS::PropertyID const>::Span(Web::CSS::PropertyID const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::CSS::Parser::Token const>::Span(Web::CSS::Parser::Token const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue> const>::Span(Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue const> const>::Span(Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue const> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::Span(AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::Span<unsigned char const> >::Span(AK::Span<unsigned char const>*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::Bindings::KeyUsage const>::Span(Web::Bindings::KeyUsage const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::Bindings::KeyUsage>::Span(Web::Bindings::KeyUsage*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::String>::Span(AK::String*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::NonnullGCPtr<JS::PromiseCapability> >::Span(JS::NonnullGCPtr<JS::PromiseCapability>*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>::Span(JS::NonnullGCPtr<JS::PromiseCapability> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::NonnullGCPtr<Web::HTML::VideoTrack> >::Span(JS::NonnullGCPtr<Web::HTML::VideoTrack>*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::NonnullRefPtr<Web::HTML::IdleCallback> const>::Span(AK::NonnullRefPtr<Web::HTML::IdleCallback> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::NonnullGCPtr<Web::FileAPI::Blob> const>::Span(JS::NonnullGCPtr<Web::FileAPI::Blob> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::Handle<Web::PerformanceTimeline::PerformanceEntry> const>::Span(JS::Handle<Web::PerformanceTimeline::PerformanceEntry> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::FlyString const>::Span(AK::FlyString const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const>::Span(AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::ByteString const>::Span(AK::ByteString const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::HTML::DragDataStoreItem const>::Span(Web::HTML::DragDataStoreItem const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const>::Span(AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::Painting::BorderRadiiClip const>::Span(Web::Painting::BorderRadiiClip const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::SVG::Transform const>::Span(Web::SVG::Transform const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Web::SVG::PathInstruction const>::Span(Web::SVG::PathInstruction const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::Optional<int> const>::Span(AK::Optional<int> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<JS::NonnullGCPtr<Web::UIEvents::PointerEvent> const>::Span(JS::NonnullGCPtr<Web::UIEvents::PointerEvent> const*, unsigned long) AK::Detail::Span<bool>::Span(bool*, unsigned long) Line | Count | Source | 25 | 4.63M | : m_values(values) | 26 | 4.63M | , m_size(size) | 27 | 4.63M | { | 28 | 4.63M | } |
Unexecuted instantiation: AK::Detail::Span<Wasm::ValueType const>::Span(Wasm::ValueType const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<AK::DistinctNumeric<unsigned long, Wasm::__FunctionAddress_tag, AK::DistinctNumericFeature::Arithmetic, AK::DistinctNumericFeature::Comparison, AK::DistinctNumericFeature::Increment> const>::Span(AK::DistinctNumeric<unsigned long, Wasm::__FunctionAddress_tag, AK::DistinctNumericFeature::Arithmetic, AK::DistinctNumericFeature::Comparison, AK::DistinctNumericFeature::Increment> const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Wasm::Value>::Span(Wasm::Value*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Wasm::Validator::StackEntry const>::Span(Wasm::Validator::StackEntry const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<Wasm::FunctionType const>::Span(Wasm::FunctionType const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<SQL::TupleElementDescriptor const>::Span(SQL::TupleElementDescriptor const*, unsigned long) Unexecuted instantiation: AK::Detail::Span<SQL::Value const>::Span(SQL::Value const*, unsigned long) |
29 | | |
30 | | template<size_t size> |
31 | | ALWAYS_INLINE constexpr Span(T (&values)[size]) |
32 | 271M | : m_values(values) |
33 | 271M | , m_size(size) |
34 | 271M | { |
35 | 271M | } AK::Detail::Span<short const>::Span<64ul>(short const (&) [64ul]) Line | Count | Source | 32 | 18.0M | : m_values(values) | 33 | 18.0M | , m_size(size) | 34 | 18.0M | { | 35 | 18.0M | } |
AK::Detail::Span<short>::Span<64ul>(short (&) [64ul]) Line | Count | Source | 32 | 18.0M | : m_values(values) | 33 | 18.0M | , m_size(size) | 34 | 18.0M | { | 35 | 18.0M | } |
AK::Detail::Span<signed char const>::Span<6ul>(signed char const (&) [6ul]) Line | Count | Source | 32 | 17.4M | : m_values(values) | 33 | 17.4M | , m_size(size) | 34 | 17.4M | { | 35 | 17.4M | } |
AK::Detail::Span<signed char const>::Span<8ul>(signed char const (&) [8ul]) Line | Count | Source | 32 | 13.4M | : m_values(values) | 33 | 13.4M | , m_size(size) | 34 | 13.4M | { | 35 | 13.4M | } |
AK::Detail::Span<signed char const>::Span<18ul>(signed char const (&) [18ul]) Line | Count | Source | 32 | 198M | : m_values(values) | 33 | 198M | , m_size(size) | 34 | 198M | { | 35 | 198M | } |
AK::Detail::Span<signed char const>::Span<22ul>(signed char const (&) [22ul]) Line | Count | Source | 32 | 6.10M | : m_values(values) | 33 | 6.10M | , m_size(size) | 34 | 6.10M | { | 35 | 6.10M | } |
Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span<2ul>(AK::StringView const (&) [2ul]) Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span<3ul>(AK::StringView const (&) [3ul]) Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span<4ul>(AK::StringView const (&) [4ul]) Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span<6ul>(AK::StringView const (&) [6ul]) Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span<5ul>(AK::StringView const (&) [5ul]) Unexecuted instantiation: AK::Detail::Span<AK::StringView const>::Span<9ul>(AK::StringView const (&) [9ul]) Unexecuted instantiation: AK::Detail::Span<JS::Temporal::TimeZoneMethod const>::Span<2ul>(JS::Temporal::TimeZoneMethod const (&) [2ul]) Unexecuted instantiation: AK::Detail::Span<JS::Temporal::TimeZoneMethod const>::Span<1ul>(JS::Temporal::TimeZoneMethod const (&) [1ul]) Unexecuted instantiation: AK::Detail::Span<JS::Temporal::CalendarMethod const>::Span<2ul>(JS::Temporal::CalendarMethod const (&) [2ul]) Unexecuted instantiation: AK::Detail::Span<JS::Temporal::CalendarMethod const>::Span<4ul>(JS::Temporal::CalendarMethod const (&) [4ul]) Unexecuted instantiation: AK::Detail::Span<JS::Value const>::Span<1ul>(JS::Value const (&) [1ul]) Unexecuted instantiation: AK::Detail::Span<AK::StringView>::Span<2ul>(AK::StringView (&) [2ul]) Unexecuted instantiation: AK::Detail::Span<Web::Bindings::KeyUsage const>::Span<2ul>(Web::Bindings::KeyUsage const (&) [2ul]) Unexecuted instantiation: AK::Detail::Span<Web::Bindings::KeyUsage const>::Span<1ul>(Web::Bindings::KeyUsage const (&) [1ul]) |
36 | | |
37 | | template<size_t size> |
38 | | ALWAYS_INLINE constexpr Span(Array<T, size>& array) |
39 | 1.71M | : m_values(array.data()) |
40 | 1.71M | , m_size(size) |
41 | 1.71M | { |
42 | 1.71M | } |
43 | | |
44 | | template<size_t size> |
45 | | requires(IsConst<T>) |
46 | | ALWAYS_INLINE constexpr Span(Array<T, size> const& array) |
47 | | : m_values(array.data()) |
48 | | , m_size(size) |
49 | | { |
50 | | } |
51 | | |
52 | | protected: |
53 | | T* m_values { nullptr }; |
54 | | size_t m_size { 0 }; |
55 | | }; |
56 | | |
57 | | template<> |
58 | | class Span<u8> { |
59 | | public: |
60 | 335k | ALWAYS_INLINE constexpr Span() = default; |
61 | | |
62 | | ALWAYS_INLINE constexpr Span(u8* values, size_t size) |
63 | 3.78G | : m_values(values) |
64 | 3.78G | , m_size(size) |
65 | 3.78G | { |
66 | 3.78G | } |
67 | | |
68 | | ALWAYS_INLINE Span(void* values, size_t size) |
69 | 736M | : m_values(reinterpret_cast<u8*>(values)) |
70 | 736M | , m_size(size) |
71 | 736M | { |
72 | 736M | } |
73 | | |
74 | | template<size_t size> |
75 | | ALWAYS_INLINE constexpr Span(u8 (&values)[size]) |
76 | 335k | : m_values(values) |
77 | 335k | , m_size(size) |
78 | 335k | { |
79 | 335k | } Unexecuted instantiation: AK::Detail::Span<unsigned char>::Span<3ul>(unsigned char (&) [3ul]) AK::Detail::Span<unsigned char>::Span<256ul>(unsigned char (&) [256ul]) Line | Count | Source | 76 | 111k | : m_values(values) | 77 | 111k | , m_size(size) | 78 | 111k | { | 79 | 111k | } |
AK::Detail::Span<unsigned char>::Span<64ul>(unsigned char (&) [64ul]) Line | Count | Source | 76 | 223k | : m_values(values) | 77 | 223k | , m_size(size) | 78 | 223k | { | 79 | 223k | } |
Unexecuted instantiation: AK::Detail::Span<unsigned char>::Span<16ul>(unsigned char (&) [16ul]) Unexecuted instantiation: AK::Detail::Span<unsigned char>::Span<4096ul>(unsigned char (&) [4096ul]) |
80 | | |
81 | | protected: |
82 | | u8* m_values { nullptr }; |
83 | | size_t m_size { 0 }; |
84 | | }; |
85 | | |
86 | | template<> |
87 | | class Span<u8 const> { |
88 | | public: |
89 | 7.33M | ALWAYS_INLINE constexpr Span() = default; |
90 | | |
91 | | ALWAYS_INLINE constexpr Span(u8 const* values, size_t size) |
92 | 7.19G | : m_values(values) |
93 | 7.19G | , m_size(size) |
94 | 7.19G | { |
95 | 7.19G | } |
96 | | |
97 | | ALWAYS_INLINE Span(void const* values, size_t size) |
98 | 15.2M | : m_values(reinterpret_cast<u8 const*>(values)) |
99 | 15.2M | , m_size(size) |
100 | 15.2M | { |
101 | 15.2M | } |
102 | | |
103 | | ALWAYS_INLINE Span(char const* values, size_t size) |
104 | 98.0M | : m_values(reinterpret_cast<u8 const*>(values)) |
105 | 98.0M | , m_size(size) |
106 | 98.0M | { |
107 | 98.0M | } |
108 | | |
109 | | template<size_t size> |
110 | | ALWAYS_INLINE constexpr Span(u8 const (&values)[size]) |
111 | 238M | : m_values(values) |
112 | 238M | , m_size(size) |
113 | 238M | { |
114 | 238M | } AK::Detail::Span<unsigned char const>::Span<8ul>(unsigned char const (&) [8ul]) Line | Count | Source | 111 | 1.35M | : m_values(values) | 112 | 1.35M | , m_size(size) | 113 | 1.35M | { | 114 | 1.35M | } |
AK::Detail::Span<unsigned char const>::Span<3ul>(unsigned char const (&) [3ul]) Line | Count | Source | 111 | 17.4M | : m_values(values) | 112 | 17.4M | , m_size(size) | 113 | 17.4M | { | 114 | 17.4M | } |
AK::Detail::Span<unsigned char const>::Span<4ul>(unsigned char const (&) [4ul]) Line | Count | Source | 111 | 14.6M | : m_values(values) | 112 | 14.6M | , m_size(size) | 113 | 14.6M | { | 114 | 14.6M | } |
AK::Detail::Span<unsigned char const>::Span<12ul>(unsigned char const (&) [12ul]) Line | Count | Source | 111 | 2.22k | : m_values(values) | 112 | 2.22k | , m_size(size) | 113 | 2.22k | { | 114 | 2.22k | } |
AK::Detail::Span<unsigned char const>::Span<9ul>(unsigned char const (&) [9ul]) Line | Count | Source | 111 | 198M | : m_values(values) | 112 | 198M | , m_size(size) | 113 | 198M | { | 114 | 198M | } |
AK::Detail::Span<unsigned char const>::Span<11ul>(unsigned char const (&) [11ul]) Line | Count | Source | 111 | 6.10M | : m_values(values) | 112 | 6.10M | , m_size(size) | 113 | 6.10M | { | 114 | 6.10M | } |
AK::Detail::Span<unsigned char const>::Span<16ul>(unsigned char const (&) [16ul]) Line | Count | Source | 111 | 111k | : m_values(values) | 112 | 111k | , m_size(size) | 113 | 111k | { | 114 | 111k | } |
AK::Detail::Span<unsigned char const>::Span<256ul>(unsigned char const (&) [256ul]) Line | Count | Source | 111 | 111k | : m_values(values) | 112 | 111k | , m_size(size) | 113 | 111k | { | 114 | 111k | } |
AK::Detail::Span<unsigned char const>::Span<64ul>(unsigned char const (&) [64ul]) Line | Count | Source | 111 | 223k | : m_values(values) | 112 | 223k | , m_size(size) | 113 | 223k | { | 114 | 223k | } |
|
115 | | |
116 | | protected: |
117 | | u8 const* m_values { nullptr }; |
118 | | size_t m_size { 0 }; |
119 | | }; |
120 | | |
121 | | } |
122 | | |
123 | | template<typename T> |
124 | | class Span : public Detail::Span<T> { |
125 | | public: |
126 | | using Detail::Span<T>::Span; |
127 | | |
128 | 11.6M | constexpr Span() = default; AK::Span<unsigned char const>::Span() Line | Count | Source | 128 | 7.33M | constexpr Span() = default; |
Line | Count | Source | 128 | 766k | constexpr Span() = default; |
AK::Span<float const>::Span() Line | Count | Source | 128 | 155k | constexpr Span() = default; |
AK::Span<unsigned char>::Span() Line | Count | Source | 128 | 335k | constexpr Span() = default; |
AK::Span<AK::BigEndian<short> const>::Span() Line | Count | Source | 128 | 602 | constexpr Span() = default; |
Unexecuted instantiation: AK::Span<unsigned short const>::Span() Unexecuted instantiation: AK::Span<TimeZone::TimeZoneIdentifier const>::Span() AK::Span<unsigned int const>::Span() Line | Count | Source | 128 | 1 | constexpr Span() = default; |
Unexecuted instantiation: AK::Span<Unicode::BlockName const>::Span() AK::Span<Unicode::SpecialCasing const>::Span() Line | Count | Source | 128 | 18.0k | constexpr Span() = default; |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::Span() AK::Span<JS::Value>::Span() Line | Count | Source | 128 | 122 | constexpr Span() = default; |
Unexecuted instantiation: AK::Span<JS::Value const>::Span() Unexecuted instantiation: AK::Span<AK::String const>::Span() Unexecuted instantiation: AK::Span<AK::StringView const>::Span() Unexecuted instantiation: AK::Span<unsigned long const>::Span() Unexecuted instantiation: AK::Span<signed char const>::Span() Unexecuted instantiation: AK::Span<short const>::Span() Unexecuted instantiation: AK::Span<int const>::Span() Unexecuted instantiation: AK::Span<long const>::Span() Unexecuted instantiation: AK::Span<double const>::Span() Unexecuted instantiation: AK::Span<unsigned short>::Span() Unexecuted instantiation: AK::Span<unsigned int>::Span() Unexecuted instantiation: AK::Span<unsigned long>::Span() Unexecuted instantiation: AK::Span<signed char>::Span() Unexecuted instantiation: AK::Span<short>::Span() Unexecuted instantiation: AK::Span<int>::Span() Unexecuted instantiation: AK::Span<long>::Span() Unexecuted instantiation: AK::Span<double>::Span() Unexecuted instantiation: AK::Span<Locale::PluralCategory const>::Span() Unexecuted instantiation: AK::Span<AK::StringView>::Span() Unexecuted instantiation: AK::Span<AK::OptionParser::Option const>::Span() Unexecuted instantiation: AK::Span<Web::Painting::BorderRadiiClip const>::Span() Line | Count | Source | 128 | 3.08M | constexpr Span() = default; |
|
129 | | |
130 | 3.37G | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } AK::Span<unsigned char>::data() const Line | Count | Source | 130 | 854M | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<unsigned char const>::data() const Line | Count | Source | 130 | 2.43G | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<unsigned short const>::data() const AK::Span<Gfx::JBIG2::Code>::data() const Line | Count | Source | 130 | 45 | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<float const>::data() const Line | Count | Source | 130 | 660k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<short const>::data() const Line | Count | Source | 130 | 18.0M | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<Gfx::ChannelInfo>::data() const AK::Span<Gfx::Color>::data() const Line | Count | Source | 130 | 1.27k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<AK::StringView const>::data() const AK::Span<unsigned long>::data() const Line | Count | Source | 130 | 49.4M | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<unsigned long const>::data() const Line | Count | Source | 130 | 16.6k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<unsigned int const>::data() const AK::Span<unsigned int>::data() const Line | Count | Source | 130 | 102 | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<Unicode::BlockName>::data() const AK::Span<JS::Value>::data() const Line | Count | Source | 130 | 469k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<JS::CallExpressionArgument>::data() const Line | Count | Source | 130 | 990 | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<JS::DeclarativeEnvironment::Binding>::data() const Unexecuted instantiation: AK::Span<AK::StringView>::data() const AK::Span<Shell::AST::Position>::data() const Line | Count | Source | 130 | 891k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<Shell::Posix::Token>::data() const Line | Count | Source | 130 | 17.5M | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<int>::data() const Line | Count | Source | 130 | 27.3k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
AK::Span<int const>::data() const Line | Count | Source | 130 | 51.7k | [[nodiscard]] ALWAYS_INLINE constexpr T const* data() const { return this->m_values; } |
Unexecuted instantiation: AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue> const>::data() const Unexecuted instantiation: AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue const> const>::data() const Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::data() const Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage>::data() const Unexecuted instantiation: AK::Span<AK::String>::data() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> >::data() const Unexecuted instantiation: AK::Span<float>::data() const Unexecuted instantiation: AK::Span<double>::data() const Unexecuted instantiation: AK::Span<AK::Optional<int> const>::data() const |
131 | 5.38G | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } AK::Span<unsigned char const>::data() Line | Count | Source | 131 | 3.20G | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
AK::Span<unsigned char>::data() Line | Count | Source | 131 | 2.06G | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
AK::Span<AK::Vector<unsigned char, 0ul> const>::data() Line | Count | Source | 131 | 219k | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Gfx::Symbol> const>::data() Line | Count | Source | 131 | 660k | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Line | Count | Source | 131 | 18.0M | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<Gfx::ChannelInfo const>::data() Unexecuted instantiation: AK::Span<unsigned int const>::data() Unexecuted instantiation: AK::Span<Gfx::PathSegment::Command const>::data() Unexecuted instantiation: AK::Span<Gfx::Point<float> const>::data() AK::Span<AK::StringView const>::data() Line | Count | Source | 131 | 46 | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<char>::data() Unexecuted instantiation: AK::Span<pollfd>::data() Unexecuted instantiation: AK::Span<unsigned int>::data() AK::Span<AK::Variant<XML::ElementDeclaration, XML::AttributeListDeclaration, AK::Variant<XML::GEDeclaration, XML::PEDeclaration>, XML::NotationDeclaration> const>::data() Line | Count | Source | 131 | 1.95k | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
AK::Span<JS::Value>::data() Line | Count | Source | 131 | 204 | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
AK::Span<AK::Vector<unsigned long, 0ul> const>::data() Line | Count | Source | 131 | 1.21M | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
AK::Span<AK::NonnullRefPtr<JS::Identifier> const>::data() Line | Count | Source | 131 | 1.32k | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
AK::Span<JS::ParserError const>::data() Line | Count | Source | 131 | 83 | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<JS::Value const>::data() Unexecuted instantiation: AK::Span<JS::DeclarativeEnvironment::Binding const>::data() Unexecuted instantiation: AK::Span<unsigned short const>::data() Unexecuted instantiation: AK::Span<JS::ImportEntry const>::data() Unexecuted instantiation: AK::Span<regex::CompareTypeAndValuePair const>::data() AK::Span<Shell::AST::Position const>::data() Line | Count | Source | 131 | 891k | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<Shell::AST::VariableDeclarations::Variable const>::data() Unexecuted instantiation: AK::Span<AK::String const>::data() Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Shell::AST::Redirection> const>::data() Unexecuted instantiation: AK::Span<Shell::AST::Command const>::data() Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Shell::AST::Value> const>::data() Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Shell::AST::Node> const>::data() AK::Span<Shell::Posix::Token const>::data() Line | Count | Source | 131 | 17.5M | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<AK::StringView>::data() Unexecuted instantiation: AK::Span<int const>::data() Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Web::HTML::IdleCallback> const>::data() Unexecuted instantiation: AK::Span<JS::Handle<Web::PerformanceTimeline::PerformanceEntry> const>::data() Unexecuted instantiation: AK::Span<AK::ByteString const>::data() Unexecuted instantiation: AK::Span<double const>::data() Unexecuted instantiation: AK::Span<Wasm::Validator::StackEntry const>::data() AK::Span<unsigned short>::data() Line | Count | Source | 131 | 167k | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Line | Count | Source | 131 | 81.1M | [[nodiscard]] ALWAYS_INLINE constexpr T* data() { return this->m_values; } |
Unexecuted instantiation: AK::Span<Wasm::ValueType const>::data() Unexecuted instantiation: AK::Span<AK::DistinctNumeric<unsigned long, Wasm::__FunctionAddress_tag, AK::DistinctNumericFeature::Arithmetic, AK::DistinctNumericFeature::Comparison, AK::DistinctNumericFeature::Increment> const>::data() Unexecuted instantiation: AK::Span<Wasm::FunctionType const>::data() Unexecuted instantiation: AK::Span<SQL::TupleElementDescriptor const>::data() Unexecuted instantiation: AK::Span<SQL::Value const>::data() |
132 | | |
133 | 0 | [[nodiscard]] ALWAYS_INLINE constexpr T const* offset_pointer(size_t offset) const { return this->m_values + offset; } Unexecuted instantiation: AK::Span<unsigned char>::offset_pointer(unsigned long) const Unexecuted instantiation: AK::Span<unsigned char const>::offset_pointer(unsigned long) const Unexecuted instantiation: AK::Span<unsigned int const>::offset_pointer(unsigned long) const |
134 | 13.4M | [[nodiscard]] ALWAYS_INLINE constexpr T* offset_pointer(size_t offset) { return this->m_values + offset; } AK::Span<unsigned char>::offset_pointer(unsigned long) Line | Count | Source | 134 | 1.19M | [[nodiscard]] ALWAYS_INLINE constexpr T* offset_pointer(size_t offset) { return this->m_values + offset; } |
AK::Span<unsigned char const>::offset_pointer(unsigned long) Line | Count | Source | 134 | 12.2M | [[nodiscard]] ALWAYS_INLINE constexpr T* offset_pointer(size_t offset) { return this->m_values + offset; } |
|
135 | | |
136 | | using ConstIterator = SimpleIterator<Span const, T const>; |
137 | | using Iterator = SimpleIterator<Span, T>; |
138 | | |
139 | 2.21k | constexpr ConstIterator begin() const { return ConstIterator::begin(*this); } Unexecuted instantiation: AK::Span<unsigned char const>::begin() const AK::Span<Gfx::JBIG2::Code const>::begin() const Line | Count | Source | 139 | 2.21k | constexpr ConstIterator begin() const { return ConstIterator::begin(*this); } |
Unexecuted instantiation: AK::Span<OpenType::CBLC::BitmapSize const>::begin() const Unexecuted instantiation: AK::Span<OpenType::FeatureRecord const>::begin() const Unexecuted instantiation: AK::Span<unsigned int const>::begin() const Unexecuted instantiation: AK::Span<JS::Value const>::begin() const Unexecuted instantiation: AK::Span<AK::String const>::begin() const Unexecuted instantiation: AK::Span<unsigned short const>::begin() const Unexecuted instantiation: AK::Span<AK::StringView>::begin() const Unexecuted instantiation: AK::Span<AK::FlyString const>::begin() const |
140 | 85.3M | constexpr Iterator begin() { return Iterator::begin(*this); } AK::Span<unsigned char>::begin() Line | Count | Source | 140 | 181k | constexpr Iterator begin() { return Iterator::begin(*this); } |
AK::Span<unsigned char const>::begin() Line | Count | Source | 140 | 6.07M | constexpr Iterator begin() { return Iterator::begin(*this); } |
AK::Span<Gfx::JPEG2000::SubBand const>::begin() Line | Count | Source | 140 | 17.1k | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<Gfx::Channel>::begin() AK::Span<Gfx::TinyVGDecodedImageData::DrawCommand const>::begin() Line | Count | Source | 140 | 730 | constexpr Iterator begin() { return Iterator::begin(*this); } |
AK::Span<Gfx::Line<float> const>::begin() Line | Count | Source | 140 | 439k | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<OpenType::EBLC::IndexSubTableArray const>::begin() Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::begin() Unexecuted instantiation: AK::Span<Gfx::Point<float> const>::begin() AK::Span<unsigned short const>::begin() Line | Count | Source | 140 | 53.3k | constexpr Iterator begin() { return Iterator::begin(*this); } |
AK::Span<unsigned long const>::begin() Line | Count | Source | 140 | 77.9M | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<addrinfo const>::begin() Unexecuted instantiation: EventLoopImplementationUnix.cpp:AK::Span<Core::(anonymous namespace)::EventLoopTimeout* const>::begin() Unexecuted instantiation: AK::Span<pollfd>::begin() Unexecuted instantiation: AK::Span<unsigned int>::begin() AK::Span<Unicode::SpecialCasing const>::begin() Line | Count | Source | 140 | 20.4k | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::begin() AK::Span<JS::CallExpressionArgument const>::begin() Line | Count | Source | 140 | 990 | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<JS::Value>::begin() AK::Span<AK::StringView const>::begin() Line | Count | Source | 140 | 2.36k | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<AK::String const>::begin() Unexecuted instantiation: AK::Span<TimeZone::TimeZoneIdentifier const>::begin() Unexecuted instantiation: AK::Span<JS::Intl::PatternPartition const>::begin() Unexecuted instantiation: AK::Span<Locale::CalendarRangePattern const>::begin() Unexecuted instantiation: AK::Span<Locale::PluralCategory const>::begin() Unexecuted instantiation: AK::Span<JS::Temporal::CalendarMethod const>::begin() Unexecuted instantiation: AK::Span<JS::Temporal::TimeZoneMethod const>::begin() Unexecuted instantiation: AK::Span<JS::Value const>::begin() AK::Span<regex::ByteCode>::begin() Line | Count | Source | 140 | 5.45k | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<unsigned int const>::begin() AK::Span<unsigned short>::begin() Line | Count | Source | 140 | 587k | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<Audio::Sample const>::begin() Unexecuted instantiation: AK::Span<AK::StringView>::begin() AK::Span<int const>::begin() Line | Count | Source | 140 | 358 | constexpr Iterator begin() { return Iterator::begin(*this); } |
Unexecuted instantiation: AK::Span<Web::CSS::PropertyID const>::begin() Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::begin() Unexecuted instantiation: AK::Span<AK::Span<unsigned char const> >::begin() Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage const>::begin() Unexecuted instantiation: AK::Span<unsigned long>::begin() Unexecuted instantiation: AK::Span<Web::HTML::SelectedFile>::begin() Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>::begin() Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::HTML::VideoTrack> >::begin() Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::FileAPI::Blob> const>::begin() Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const>::begin() Unexecuted instantiation: AK::Span<AK::ByteString const>::begin() Unexecuted instantiation: AK::Span<Web::HTML::DragDataStoreItem const>::begin() Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const>::begin() Unexecuted instantiation: AK::Span<Web::SVG::Transform const>::begin() Unexecuted instantiation: AK::Span<Web::SVG::PathInstruction const>::begin() Unexecuted instantiation: AK::Span<Wasm::Validator::StackEntry const>::begin() Unexecuted instantiation: AK::Span<Wasm::ValueType const>::begin() Unexecuted instantiation: AK::Span<Wasm::Value>::begin() |
141 | | |
142 | 2.21k | constexpr ConstIterator end() const { return ConstIterator::end(*this); } Unexecuted instantiation: AK::Span<unsigned char const>::end() const AK::Span<Gfx::JBIG2::Code const>::end() const Line | Count | Source | 142 | 2.21k | constexpr ConstIterator end() const { return ConstIterator::end(*this); } |
Unexecuted instantiation: AK::Span<OpenType::CBLC::BitmapSize const>::end() const Unexecuted instantiation: AK::Span<OpenType::FeatureRecord const>::end() const Unexecuted instantiation: AK::Span<unsigned int const>::end() const Unexecuted instantiation: AK::Span<JS::Value const>::end() const Unexecuted instantiation: AK::Span<AK::String const>::end() const Unexecuted instantiation: AK::Span<unsigned short const>::end() const Unexecuted instantiation: AK::Span<AK::StringView>::end() const Unexecuted instantiation: AK::Span<AK::FlyString const>::end() const |
143 | 85.3M | constexpr Iterator end() { return Iterator::end(*this); } AK::Span<unsigned char>::end() Line | Count | Source | 143 | 181k | constexpr Iterator end() { return Iterator::end(*this); } |
AK::Span<unsigned char const>::end() Line | Count | Source | 143 | 6.07M | constexpr Iterator end() { return Iterator::end(*this); } |
AK::Span<Gfx::JPEG2000::SubBand const>::end() Line | Count | Source | 143 | 17.1k | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<Gfx::Channel>::end() AK::Span<Gfx::TinyVGDecodedImageData::DrawCommand const>::end() Line | Count | Source | 143 | 730 | constexpr Iterator end() { return Iterator::end(*this); } |
AK::Span<Gfx::Line<float> const>::end() Line | Count | Source | 143 | 439k | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<OpenType::EBLC::IndexSubTableArray const>::end() Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::end() Unexecuted instantiation: AK::Span<Gfx::Point<float> const>::end() AK::Span<unsigned short const>::end() Line | Count | Source | 143 | 53.3k | constexpr Iterator end() { return Iterator::end(*this); } |
AK::Span<unsigned long const>::end() Line | Count | Source | 143 | 77.9M | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<addrinfo const>::end() Unexecuted instantiation: EventLoopImplementationUnix.cpp:AK::Span<Core::(anonymous namespace)::EventLoopTimeout* const>::end() Unexecuted instantiation: AK::Span<pollfd>::end() Unexecuted instantiation: AK::Span<unsigned int>::end() AK::Span<Unicode::SpecialCasing const>::end() Line | Count | Source | 143 | 20.4k | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::end() AK::Span<JS::CallExpressionArgument const>::end() Line | Count | Source | 143 | 990 | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<JS::Value>::end() AK::Span<AK::StringView const>::end() Line | Count | Source | 143 | 2.36k | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<AK::String const>::end() Unexecuted instantiation: AK::Span<TimeZone::TimeZoneIdentifier const>::end() Unexecuted instantiation: AK::Span<JS::Intl::PatternPartition const>::end() Unexecuted instantiation: AK::Span<Locale::CalendarRangePattern const>::end() Unexecuted instantiation: AK::Span<Locale::PluralCategory const>::end() Unexecuted instantiation: AK::Span<JS::Temporal::CalendarMethod const>::end() Unexecuted instantiation: AK::Span<JS::Temporal::TimeZoneMethod const>::end() Unexecuted instantiation: AK::Span<JS::Value const>::end() AK::Span<regex::ByteCode>::end() Line | Count | Source | 143 | 5.45k | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<unsigned int const>::end() AK::Span<unsigned short>::end() Line | Count | Source | 143 | 587k | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<Audio::Sample const>::end() Unexecuted instantiation: AK::Span<AK::StringView>::end() AK::Span<int const>::end() Line | Count | Source | 143 | 358 | constexpr Iterator end() { return Iterator::end(*this); } |
Unexecuted instantiation: AK::Span<Web::CSS::PropertyID const>::end() Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::end() Unexecuted instantiation: AK::Span<AK::Span<unsigned char const> >::end() Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage const>::end() Unexecuted instantiation: AK::Span<Web::HTML::SelectedFile>::end() Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>::end() Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::HTML::VideoTrack> >::end() Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::FileAPI::Blob> const>::end() Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const>::end() Unexecuted instantiation: AK::Span<AK::ByteString const>::end() Unexecuted instantiation: AK::Span<Web::HTML::DragDataStoreItem const>::end() Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const>::end() Unexecuted instantiation: AK::Span<Web::SVG::Transform const>::end() Unexecuted instantiation: AK::Span<Web::SVG::PathInstruction const>::end() Unexecuted instantiation: AK::Span<Wasm::Validator::StackEntry const>::end() Unexecuted instantiation: AK::Span<Wasm::ValueType const>::end() Unexecuted instantiation: AK::Span<Wasm::Value>::end() |
144 | | |
145 | 45.9G | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } AK::Span<unsigned char const>::size() const Line | Count | Source | 145 | 26.6G | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<unsigned char>::size() const Line | Count | Source | 145 | 14.0G | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<unsigned short const>::size() const Line | Count | Source | 145 | 106k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::Point<float> const>::size() const Line | Count | Source | 145 | 2.13G | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<AK::Vector<unsigned char, 0ul> const>::size() const Line | Count | Source | 145 | 658k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::JBIG2::Code const>::size() const Line | Count | Source | 145 | 2.21k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Gfx::Symbol> const>::size() const AK::Span<Gfx::JBIG2::Code>::size() const Line | Count | Source | 145 | 45 | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<float const>::size() const Line | Count | Source | 145 | 79.1M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<unsigned int const>::size() const CCITTDecoder.cpp:AK::Span<Gfx::CCITT::(anonymous namespace)::Change>::size() const Line | Count | Source | 145 | 275k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::JPEG2000::SubBand const>::size() const Line | Count | Source | 145 | 17.1k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<float>::size() const Line | Count | Source | 145 | 8.88M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<short>::size() const Line | Count | Source | 145 | 19.8M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<short const>::size() const Line | Count | Source | 145 | 36.1M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Gfx::ChannelInfo const>::size() const Unexecuted instantiation: AK::Span<Gfx::ChannelInfo>::size() const AK::Span<int>::size() const Line | Count | Source | 145 | 16.6M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Gfx::Channel>::size() const Unexecuted instantiation: AK::Span<Gfx::Frame>::size() const AK::Span<unsigned int>::size() const Line | Count | Source | 145 | 32.6M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::Color>::size() const Line | Count | Source | 145 | 1.27k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::Color const>::size() const Line | Count | Source | 145 | 180k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::TinyVGDecodedImageData::DrawCommand const>::size() const Line | Count | Source | 145 | 730 | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::ColorStop const>::size() const Line | Count | Source | 145 | 97.6M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Gfx::Line<float> const>::size() const Line | Count | Source | 145 | 872k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Gfx::Point<int> const>::size() const Unexecuted instantiation: AK::Span<OpenType::Hmtx::LongHorMetric const>::size() const Unexecuted instantiation: AK::Span<AK::BigEndian<short> const>::size() const Unexecuted instantiation: AK::Span<OpenType::Kern::Format0Pair const>::size() const Unexecuted instantiation: AK::Span<OpenType::CBLC::BitmapSize const>::size() const Unexecuted instantiation: AK::Span<OpenType::EBLC::IndexSubTableArray const>::size() const Unexecuted instantiation: AK::Span<OpenType::FeatureRecord const>::size() const Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::size() const AK::Span<unsigned long const>::size() const Line | Count | Source | 145 | 2.30G | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Gfx::PathSegment::Command const>::size() const AK::Span<AK::StringView const>::size() const Line | Count | Source | 145 | 2.50k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<unsigned long>::size() const Line | Count | Source | 145 | 334M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<addrinfo const>::size() const Unexecuted instantiation: EventLoopImplementationUnix.cpp:AK::Span<Core::(anonymous namespace)::EventLoopTimeout* const>::size() const Unexecuted instantiation: AK::Span<char>::size() const Unexecuted instantiation: AK::Span<pollfd>::size() const AK::Span<Unicode::SpecialCasing const>::size() const Line | Count | Source | 145 | 22.8k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::size() const Unexecuted instantiation: AK::Span<Unicode::BlockName>::size() const AK::Span<AK::Variant<XML::ElementDeclaration, XML::AttributeListDeclaration, AK::Variant<XML::GEDeclaration, XML::PEDeclaration>, XML::NotationDeclaration> const>::size() const Line | Count | Source | 145 | 5.87k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<JS::Value>::size() const Unexecuted instantiation: AK::Span<JS::Bytecode::Operand const>::size() const Unexecuted instantiation: AK::Span<JS::Value const>::size() const AK::Span<JS::Bytecode::ScopedOperand const>::size() const Line | Count | Source | 145 | 3 | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<AK::Optional<JS::Bytecode::ScopedOperand> const>::size() const AK::Span<AK::Vector<unsigned long, 0ul> const>::size() const Line | Count | Source | 145 | 3.64M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<JS::CallExpressionArgument const>::size() const Line | Count | Source | 145 | 5.44k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<AK::NonnullRefPtr<JS::Identifier> const>::size() const Line | Count | Source | 145 | 3.98k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<JS::CallExpressionArgument>::size() const Line | Count | Source | 145 | 990 | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<JS::ParserError const>::size() const Line | Count | Source | 145 | 249 | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<JS::DeclarativeEnvironment::Binding>::size() const Unexecuted instantiation: AK::Span<JS::DeclarativeEnvironment::Binding const>::size() const Unexecuted instantiation: AK::Span<AK::String const>::size() const Unexecuted instantiation: AK::Span<TimeZone::TimeZoneIdentifier const>::size() const Unexecuted instantiation: AK::Span<JS::Intl::PatternPartition const>::size() const Unexecuted instantiation: AK::Span<Locale::CalendarRangePattern const>::size() const Unexecuted instantiation: AK::Span<AK::StringView>::size() const AK::Span<int const>::size() const Line | Count | Source | 145 | 80.8k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Locale::PluralCategory const>::size() const Unexecuted instantiation: AK::Span<JS::Temporal::CalendarMethod const>::size() const Unexecuted instantiation: AK::Span<JS::Temporal::TimeZoneMethod const>::size() const AK::Span<JS::Position>::size() const Line | Count | Source | 145 | 1.19k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<JS::ImportEntry const>::size() const AK::Span<regex::ByteCode>::size() const Line | Count | Source | 145 | 38.7M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<regex::CompareTypeAndValuePair const>::size() const AK::Span<unsigned short>::size() const Line | Count | Source | 145 | 38.2M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Audio::Sample const>::size() const AK::Span<Audio::Sample>::size() const Line | Count | Source | 145 | 3.20M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Audio::MP3::Tables::ScaleFactorBand const>::size() const Line | Count | Source | 145 | 500k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Shell::AST::Position>::size() const Line | Count | Source | 145 | 891k | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Shell::AST::Position const>::size() const Line | Count | Source | 145 | 2.67M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Shell::AST::VariableDeclarations::Variable const>::size() const Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Shell::AST::Redirection> const>::size() const Unexecuted instantiation: AK::Span<Shell::AST::Command const>::size() const Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Shell::AST::Value> const>::size() const Unexecuted instantiation: AK::Span<AK::Variant<AK::String, long, Shell::Arithmetic::Operator> >::size() const Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Shell::AST::Node> const>::size() const AK::Span<Shell::Posix::Token>::size() const Line | Count | Source | 145 | 17.5M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
AK::Span<Shell::Posix::Token const>::size() const Line | Count | Source | 145 | 52.5M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Shell::Shell::RunnablePath>::size() const Unexecuted instantiation: AK::Span<Line::XtermSuggestionDisplay::PageRange>::size() const Unexecuted instantiation: AK::Span<AK::OptionParser::Option const>::size() const Unexecuted instantiation: AK::Span<Web::CSS::Parser::ComponentValue const>::size() const Unexecuted instantiation: AK::Span<Web::CSS::Parser::Token const>::size() const Unexecuted instantiation: AK::Span<Web::CSS::PropertyID const>::size() const Unexecuted instantiation: AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue> const>::size() const Unexecuted instantiation: AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue const> const>::size() const Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::size() const Unexecuted instantiation: AK::Span<AK::Span<unsigned char const> >::size() const Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage const>::size() const Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage>::size() const Unexecuted instantiation: AK::Span<AK::String>::size() const Unexecuted instantiation: AK::Span<Web::HTML::SelectedFile>::size() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> >::size() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>::size() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::HTML::VideoTrack> >::size() const Unexecuted instantiation: AK::Span<double>::size() const Unexecuted instantiation: AK::Span<double const>::size() const Unexecuted instantiation: AK::Span<AK::NonnullRefPtr<Web::HTML::IdleCallback> const>::size() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::FileAPI::Blob> const>::size() const Unexecuted instantiation: AK::Span<JS::Handle<Web::PerformanceTimeline::PerformanceEntry> const>::size() const Unexecuted instantiation: AK::Span<AK::FlyString const>::size() const Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const>::size() const Unexecuted instantiation: AK::Span<AK::ByteString const>::size() const Unexecuted instantiation: AK::Span<Web::HTML::DragDataStoreItem const>::size() const Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const>::size() const Unexecuted instantiation: AK::Span<Web::Painting::BorderRadiiClip const>::size() const Unexecuted instantiation: AK::Span<Web::SVG::Transform const>::size() const Unexecuted instantiation: AK::Span<Web::SVG::PathInstruction const>::size() const Unexecuted instantiation: AK::Span<AK::Optional<int> const>::size() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::UIEvents::PointerEvent> const>::size() const Unexecuted instantiation: AK::Span<Wasm::Validator::StackEntry const>::size() const AK::Span<bool>::size() const Line | Count | Source | 145 | 61.4M | [[nodiscard]] ALWAYS_INLINE constexpr size_t size() const { return this->m_size; } |
Unexecuted instantiation: AK::Span<Wasm::ValueType const>::size() const Unexecuted instantiation: AK::Span<AK::DistinctNumeric<unsigned long, Wasm::__FunctionAddress_tag, AK::DistinctNumericFeature::Arithmetic, AK::DistinctNumericFeature::Comparison, AK::DistinctNumericFeature::Increment> const>::size() const Unexecuted instantiation: AK::Span<Wasm::Value>::size() const Unexecuted instantiation: AK::Span<Wasm::FunctionType const>::size() const Unexecuted instantiation: AK::Span<SQL::Value const>::size() const Unexecuted instantiation: AK::Span<SQL::TupleElementDescriptor const>::size() const |
146 | 0 | [[nodiscard]] ALWAYS_INLINE constexpr bool is_null() const { return this->m_values == nullptr; } Unexecuted instantiation: AK::Span<unsigned short const>::is_null() const Unexecuted instantiation: AK::Span<unsigned char>::is_null() const Unexecuted instantiation: AK::Span<unsigned short>::is_null() const Unexecuted instantiation: AK::Span<unsigned int>::is_null() const Unexecuted instantiation: AK::Span<unsigned long>::is_null() const Unexecuted instantiation: AK::Span<signed char>::is_null() const Unexecuted instantiation: AK::Span<short>::is_null() const Unexecuted instantiation: AK::Span<int>::is_null() const Unexecuted instantiation: AK::Span<long>::is_null() const Unexecuted instantiation: AK::Span<float>::is_null() const Unexecuted instantiation: AK::Span<double>::is_null() const Unexecuted instantiation: AK::Span<unsigned char const>::is_null() const |
147 | 964M | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } AK::Span<unsigned char>::is_empty() const Line | Count | Source | 147 | 95.6M | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
AK::Span<unsigned char const>::is_empty() const Line | Count | Source | 147 | 629k | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
Unexecuted instantiation: AK::Span<unsigned short const>::is_empty() const CCITTDecoder.cpp:AK::Span<Gfx::CCITT::(anonymous namespace)::Change>::is_empty() const Line | Count | Source | 147 | 152k | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
AK::Span<Gfx::ColorStop const>::is_empty() const Line | Count | Source | 147 | 256k | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
AK::Span<Gfx::Line<float> const>::is_empty() const Line | Count | Source | 147 | 442k | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
AK::Span<unsigned int const>::is_empty() const Line | Count | Source | 147 | 52 | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
Unexecuted instantiation: AK::Span<JS::Value const>::is_empty() const Unexecuted instantiation: AK::Span<JS::CallExpressionArgument const>::is_empty() const Unexecuted instantiation: AK::Span<JS::Value>::is_empty() const Unexecuted instantiation: AK::Span<AK::StringView const>::is_empty() const AK::Span<unsigned long>::is_empty() const Line | Count | Source | 147 | 41.9M | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
AK::Span<unsigned long const>::is_empty() const Line | Count | Source | 147 | 819M | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
AK::Span<Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanXY> const>::is_empty() const Line | Count | Source | 147 | 6.21M | [[nodiscard]] ALWAYS_INLINE constexpr bool is_empty() const { return this->m_size == 0; } |
Unexecuted instantiation: AK::Span<AK::Variant<AK::String, long, Shell::Arithmetic::Operator> >::is_empty() const Unexecuted instantiation: AK::Span<AK::StringView>::is_empty() const Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::is_empty() const Unexecuted instantiation: AK::Span<Web::HTML::SelectedFile>::is_empty() const |
148 | | |
149 | | [[nodiscard]] ALWAYS_INLINE constexpr Span slice(size_t start, size_t length) const |
150 | 4.61G | { |
151 | 4.61G | VERIFY(start + length <= size()); |
152 | 4.61G | return { this->m_values + start, length }; |
153 | 4.61G | } AK::Span<unsigned char const>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 1.56G | { | 151 | 1.56G | VERIFY(start + length <= size()); | 152 | 1.56G | return { this->m_values + start, length }; | 153 | 1.56G | } |
AK::Span<Gfx::Point<float> const>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 1.87G | { | 151 | 1.87G | VERIFY(start + length <= size()); | 152 | 1.87G | return { this->m_values + start, length }; | 153 | 1.87G | } |
Unexecuted instantiation: AK::Span<unsigned short const>::slice(unsigned long, unsigned long) const AK::Span<unsigned char>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 995M | { | 151 | 995M | VERIFY(start + length <= size()); | 152 | 995M | return { this->m_values + start, length }; | 153 | 995M | } |
AK::Span<float const>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 73.0M | { | 151 | 73.0M | VERIFY(start + length <= size()); | 152 | 73.0M | return { this->m_values + start, length }; | 153 | 73.0M | } |
AK::Span<float>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 2.37M | { | 151 | 2.37M | VERIFY(start + length <= size()); | 152 | 2.37M | return { this->m_values + start, length }; | 153 | 2.37M | } |
Unexecuted instantiation: AK::Span<unsigned long const>::slice(unsigned long, unsigned long) const AK::Span<Unicode::SpecialCasing const>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 2.41k | { | 151 | 2.41k | VERIFY(start + length <= size()); | 152 | 2.41k | return { this->m_values + start, length }; | 153 | 2.41k | } |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::slice(unsigned long, unsigned long) const Unexecuted instantiation: AK::Span<JS::DeclarativeEnvironment::Binding>::slice(unsigned long, unsigned long) const Unexecuted instantiation: AK::Span<JS::Value>::slice(unsigned long, unsigned long) const AK::Span<unsigned long>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 78.4M | { | 151 | 78.4M | VERIFY(start + length <= size()); | 152 | 78.4M | return { this->m_values + start, length }; | 153 | 78.4M | } |
Unexecuted instantiation: AK::Span<unsigned int>::slice(unsigned long, unsigned long) const AK::Span<unsigned short>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 17.0M | { | 151 | 17.0M | VERIFY(start + length <= size()); | 152 | 17.0M | return { this->m_values + start, length }; | 153 | 17.0M | } |
AK::Span<short>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 864k | { | 151 | 864k | VERIFY(start + length <= size()); | 152 | 864k | return { this->m_values + start, length }; | 153 | 864k | } |
Unexecuted instantiation: AK::Span<AK::StringView>::slice(unsigned long, unsigned long) const AK::Span<bool>::slice(unsigned long, unsigned long) const Line | Count | Source | 150 | 3.08M | { | 151 | 3.08M | VERIFY(start + length <= size()); | 152 | 3.08M | return { this->m_values + start, length }; | 153 | 3.08M | } |
|
154 | | [[nodiscard]] ALWAYS_INLINE constexpr Span slice(size_t start) const |
155 | 3.28G | { |
156 | 3.28G | VERIFY(start <= size()); |
157 | 3.28G | return { this->m_values + start, size() - start }; |
158 | 3.28G | } AK::Span<unsigned char>::slice(unsigned long) const Line | Count | Source | 155 | 1.17G | { | 156 | 1.17G | VERIFY(start <= size()); | 157 | 1.17G | return { this->m_values + start, size() - start }; | 158 | 1.17G | } |
AK::Span<unsigned char const>::slice(unsigned long) const Line | Count | Source | 155 | 2.10G | { | 156 | 2.10G | VERIFY(start <= size()); | 157 | 2.10G | return { this->m_values + start, size() - start }; | 158 | 2.10G | } |
CCITTDecoder.cpp:AK::Span<Gfx::CCITT::(anonymous namespace)::Change>::slice(unsigned long) const Line | Count | Source | 155 | 61.6k | { | 156 | 61.6k | VERIFY(start <= size()); | 157 | 61.6k | return { this->m_values + start, size() - start }; | 158 | 61.6k | } |
AK::Span<float>::slice(unsigned long) const Line | Count | Source | 155 | 766k | { | 156 | 766k | VERIFY(start <= size()); | 157 | 766k | return { this->m_values + start, size() - start }; | 158 | 766k | } |
AK::Span<unsigned int>::slice(unsigned long) const Line | Count | Source | 155 | 102 | { | 156 | 102 | VERIFY(start <= size()); | 157 | 102 | return { this->m_values + start, size() - start }; | 158 | 102 | } |
Unexecuted instantiation: AK::Span<JS::Value>::slice(unsigned long) const Unexecuted instantiation: AK::Span<AK::Variant<AK::String, long, Shell::Arithmetic::Operator> >::slice(unsigned long) const Unexecuted instantiation: AK::Span<AK::StringView>::slice(unsigned long) const Unexecuted instantiation: AK::Span<unsigned long>::slice(unsigned long) const |
159 | | [[nodiscard]] ALWAYS_INLINE constexpr Span slice_from_end(size_t count) const |
160 | 64.1k | { |
161 | 64.1k | VERIFY(count <= size()); |
162 | 64.1k | return { this->m_values + size() - count, count }; |
163 | 64.1k | } AK::Span<unsigned char>::slice_from_end(unsigned long) const Line | Count | Source | 160 | 64.1k | { | 161 | 64.1k | VERIFY(count <= size()); | 162 | 64.1k | return { this->m_values + size() - count, count }; | 163 | 64.1k | } |
Unexecuted instantiation: AK::Span<unsigned char const>::slice_from_end(unsigned long) const Unexecuted instantiation: AK::Span<Wasm::Value>::slice_from_end(unsigned long) const |
164 | | |
165 | | [[nodiscard]] ALWAYS_INLINE constexpr Span trim(size_t length) const |
166 | 1.50G | { |
167 | 1.50G | return { this->m_values, min(size(), length) }; |
168 | 1.50G | } AK::Span<unsigned char>::trim(unsigned long) const Line | Count | Source | 166 | 437M | { | 167 | 437M | return { this->m_values, min(size(), length) }; | 168 | 437M | } |
AK::Span<unsigned char const>::trim(unsigned long) const Line | Count | Source | 166 | 1.05G | { | 167 | 1.05G | return { this->m_values, min(size(), length) }; | 168 | 1.05G | } |
Unexecuted instantiation: AK::Span<AK::StringView const>::trim(unsigned long) const Unexecuted instantiation: AK::Span<unsigned int>::trim(unsigned long) const AK::Span<Audio::Sample>::trim(unsigned long) const Line | Count | Source | 166 | 250k | { | 167 | 250k | return { this->m_values, min(size(), length) }; | 168 | 250k | } |
Unexecuted instantiation: AK::Span<unsigned long>::trim(unsigned long) const AK::Span<unsigned short>::trim(unsigned long) const Line | Count | Source | 166 | 167k | { | 167 | 167k | return { this->m_values, min(size(), length) }; | 168 | 167k | } |
AK::Span<int>::trim(unsigned long) const Line | Count | Source | 166 | 14.6M | { | 167 | 14.6M | return { this->m_values, min(size(), length) }; | 168 | 14.6M | } |
|
169 | | |
170 | | [[nodiscard]] Span align_to(size_t alignment) const |
171 | | { |
172 | | auto* start = reinterpret_cast<T*>(align_up_to((FlatPtr)data(), alignment)); |
173 | | auto* end = reinterpret_cast<T*>(align_down_to((FlatPtr)(data() + size()), alignment)); |
174 | | if (end < start) |
175 | | return {}; |
176 | | size_t length = end - start; |
177 | | return { start, length }; |
178 | | } |
179 | | |
180 | | [[nodiscard]] ALWAYS_INLINE constexpr T* offset(size_t start) const |
181 | 8.98M | { |
182 | 8.98M | VERIFY(start < this->m_size); |
183 | 8.98M | return this->m_values + start; |
184 | 8.98M | } AK::Span<unsigned char const>::offset(unsigned long) const Line | Count | Source | 181 | 8.97M | { | 182 | 8.97M | VERIFY(start < this->m_size); | 183 | 8.97M | return this->m_values + start; | 184 | 8.97M | } |
Unexecuted instantiation: AK::Span<Audio::Sample>::offset(unsigned long) const AK::Span<unsigned char>::offset(unsigned long) const Line | Count | Source | 181 | 9.64k | { | 182 | 9.64k | VERIFY(start < this->m_size); | 183 | 9.64k | return this->m_values + start; | 184 | 9.64k | } |
|
185 | | |
186 | | ALWAYS_INLINE constexpr void overwrite(size_t offset, void const* data, size_t data_size) |
187 | 145k | { |
188 | | // make sure we're not told to write past the end |
189 | 145k | VERIFY(offset + data_size <= size()); |
190 | 145k | __builtin_memmove(this->data() + offset, data, data_size); |
191 | 145k | } |
192 | | |
193 | | ALWAYS_INLINE constexpr size_t copy_to(Span<RemoveConst<T>> other) const |
194 | 224M | { |
195 | 224M | VERIFY(other.size() >= size()); |
196 | 224M | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), size()); |
197 | 224M | } AK::Span<unsigned char const>::copy_to(AK::Span<unsigned char>) const Line | Count | Source | 194 | 40.0M | { | 195 | 40.0M | VERIFY(other.size() >= size()); | 196 | 40.0M | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), size()); | 197 | 40.0M | } |
AK::Span<float const>::copy_to(AK::Span<float>) const Line | Count | Source | 194 | 660k | { | 195 | 660k | VERIFY(other.size() >= size()); | 196 | 660k | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), size()); | 197 | 660k | } |
AK::Span<short const>::copy_to(AK::Span<short>) const Line | Count | Source | 194 | 18.0M | { | 195 | 18.0M | VERIFY(other.size() >= size()); | 196 | 18.0M | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), size()); | 197 | 18.0M | } |
AK::Span<unsigned char>::copy_to(AK::Span<unsigned char>) const Line | Count | Source | 194 | 165M | { | 195 | 165M | VERIFY(other.size() >= size()); | 196 | 165M | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), size()); | 197 | 165M | } |
Unexecuted instantiation: AK::Span<AK::StringView>::copy_to(AK::Span<AK::StringView>) const Unexecuted instantiation: AK::Span<float>::copy_to(AK::Span<float>) const |
198 | | |
199 | | ALWAYS_INLINE constexpr size_t copy_trimmed_to(Span<RemoveConst<T>> other) const |
200 | 1.85G | { |
201 | 1.85G | auto const count = min(size(), other.size()); |
202 | 1.85G | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), count); |
203 | 1.85G | } AK::Span<unsigned char>::copy_trimmed_to(AK::Span<unsigned char>) const Line | Count | Source | 200 | 667M | { | 201 | 667M | auto const count = min(size(), other.size()); | 202 | 667M | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), count); | 203 | 667M | } |
AK::Span<unsigned char const>::copy_trimmed_to(AK::Span<unsigned char>) const Line | Count | Source | 200 | 1.18G | { | 201 | 1.18G | auto const count = min(size(), other.size()); | 202 | 1.18G | return TypedTransfer<RemoveConst<T>>::copy(other.data(), data(), count); | 203 | 1.18G | } |
|
204 | | |
205 | | ALWAYS_INLINE constexpr size_t fill(T const& value) |
206 | 2 | { |
207 | 5 | for (size_t idx = 0; idx < size(); ++idx) |
208 | 3 | data()[idx] = value; |
209 | | |
210 | 2 | return size(); |
211 | 2 | } |
212 | | |
213 | | template<typename V> |
214 | | [[nodiscard]] constexpr bool contains_slow(V const& value) const |
215 | 1.81k | { |
216 | 3.08k | for (size_t i = 0; i < size(); ++i) { |
217 | 3.05k | if (Traits<RemoveReference<T>>::equals(at(i), value)) |
218 | 1.78k | return true; |
219 | 3.05k | } |
220 | 34 | return false; |
221 | 1.81k | } Unexecuted instantiation: bool AK::Span<AK::StringView const>::contains_slow<AK::String>(AK::String const&) const Unexecuted instantiation: bool AK::Span<AK::StringView const>::contains_slow<AK::StringView>(AK::StringView const&) const Unexecuted instantiation: bool AK::Span<AK::StringView>::contains_slow<AK::StringView>(AK::StringView const&) const Unexecuted instantiation: bool AK::Span<int const>::contains_slow<int>(int const&) const bool AK::Span<int>::contains_slow<unsigned short>(unsigned short const&) const Line | Count | Source | 215 | 1.81k | { | 216 | 3.08k | for (size_t i = 0; i < size(); ++i) { | 217 | 3.05k | if (Traits<RemoveReference<T>>::equals(at(i), value)) | 218 | 1.78k | return true; | 219 | 3.05k | } | 220 | 34 | return false; | 221 | 1.81k | } |
Unexecuted instantiation: bool AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::contains_slow<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > >(AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const&) const Unexecuted instantiation: bool AK::Span<int const>::contains_slow<unsigned char>(unsigned char const&) const Unexecuted instantiation: bool AK::Span<unsigned char>::contains_slow<unsigned char>(unsigned char const&) const Unexecuted instantiation: bool AK::Span<Web::Bindings::KeyUsage const>::contains_slow<Web::Bindings::KeyUsage>(Web::Bindings::KeyUsage const&) const Unexecuted instantiation: bool AK::Span<unsigned char const>::contains_slow<unsigned char>(unsigned char const&) const Unexecuted instantiation: bool AK::Span<AK::StringView const>::contains_slow<AK::ByteString>(AK::ByteString const&) const |
222 | | |
223 | | template<typename V> |
224 | | [[nodiscard]] constexpr bool filled_with(V const& value) const |
225 | | { |
226 | | for (size_t i = 0; i < size(); ++i) { |
227 | | if (!Traits<RemoveReference<T>>::equals(at(i), value)) |
228 | | return false; |
229 | | } |
230 | | return true; |
231 | | } |
232 | | |
233 | | [[nodiscard]] constexpr bool starts_with(ReadonlySpan<T> other) const |
234 | 6.86k | { |
235 | 6.86k | if (size() < other.size()) |
236 | 4 | return false; |
237 | | |
238 | 6.86k | return TypedTransfer<T>::compare(data(), other.data(), other.size()); |
239 | 6.86k | } AK::Span<unsigned char const>::starts_with(AK::Span<unsigned char const>) const Line | Count | Source | 234 | 6.86k | { | 235 | 6.86k | if (size() < other.size()) | 236 | 4 | return false; | 237 | | | 238 | 6.86k | return TypedTransfer<T>::compare(data(), other.data(), other.size()); | 239 | 6.86k | } |
Unexecuted instantiation: AK::Span<unsigned char>::starts_with(AK::Span<unsigned char const>) const |
240 | | |
241 | | [[nodiscard]] constexpr size_t matching_prefix_length(ReadonlySpan<T> other) const |
242 | 162M | { |
243 | 162M | auto maximum_length = min(size(), other.size()); |
244 | | |
245 | 1.21G | for (size_t i = 0; i < maximum_length; i++) { |
246 | 1.20G | if (data()[i] != other.data()[i]) |
247 | 157M | return i; |
248 | 1.20G | } |
249 | | |
250 | 5.86M | return maximum_length; |
251 | 162M | } |
252 | | |
253 | | [[nodiscard]] ALWAYS_INLINE constexpr T const& at(size_t index) const |
254 | 1.13G | { |
255 | 1.13G | VERIFY(index < this->m_size); |
256 | 1.13G | return this->m_values[index]; |
257 | 1.13G | } AK::Span<unsigned char const>::at(unsigned long) const Line | Count | Source | 254 | 53.3M | { | 255 | 53.3M | VERIFY(index < this->m_size); | 256 | 53.3M | return this->m_values[index]; | 257 | 53.3M | } |
AK::Span<Gfx::Point<float> const>::at(unsigned long) const Line | Count | Source | 254 | 171M | { | 255 | 171M | VERIFY(index < this->m_size); | 256 | 171M | return this->m_values[index]; | 257 | 171M | } |
AK::Span<Gfx::JBIG2::Code const>::at(unsigned long) const Line | Count | Source | 254 | 8.67k | { | 255 | 8.67k | VERIFY(index < this->m_size); | 256 | 8.67k | return this->m_values[index]; | 257 | 8.67k | } |
Unexecuted instantiation: AK::Span<unsigned int const>::at(unsigned long) const AK::Span<unsigned char>::at(unsigned long) const Line | Count | Source | 254 | 1 | { | 255 | 1 | VERIFY(index < this->m_size); | 256 | 1 | return this->m_values[index]; | 257 | 1 | } |
AK::Span<Gfx::ColorStop const>::at(unsigned long) const Line | Count | Source | 254 | 85.6M | { | 255 | 85.6M | VERIFY(index < this->m_size); | 256 | 85.6M | return this->m_values[index]; | 257 | 85.6M | } |
Unexecuted instantiation: AK::Span<OpenType::Hmtx::LongHorMetric const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::BigEndian<short> const>::at(unsigned long) const Unexecuted instantiation: AK::Span<OpenType::Name::NameRecord const>::at(unsigned long) const Unexecuted instantiation: AK::Span<OpenType::Kern::Format0Pair const>::at(unsigned long) const Unexecuted instantiation: AK::Span<OpenType::CBLC::BitmapSize const>::at(unsigned long) const Unexecuted instantiation: AK::Span<OpenType::FeatureRecord const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::at(unsigned long) const AK::Span<unsigned long>::at(unsigned long) const Line | Count | Source | 254 | 2.93M | { | 255 | 2.93M | VERIFY(index < this->m_size); | 256 | 2.93M | return this->m_values[index]; | 257 | 2.93M | } |
AK::Span<unsigned long const>::at(unsigned long) const Line | Count | Source | 254 | 819M | { | 255 | 819M | VERIFY(index < this->m_size); | 256 | 819M | return this->m_values[index]; | 257 | 819M | } |
Unexecuted instantiation: AK::Span<unsigned short const>::at(unsigned long) const Unexecuted instantiation: AK::Span<JS::Value const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::String const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::StringView const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::StringView>::at(unsigned long) const Unexecuted instantiation: AK::Span<int const>::at(unsigned long) const Unexecuted instantiation: AK::Span<unsigned int>::at(unsigned long) const AK::Span<Audio::MP3::Tables::ScaleFactorBand const>::at(unsigned long) const Line | Count | Source | 254 | 6.09M | { | 255 | 6.09M | VERIFY(index < this->m_size); | 256 | 6.09M | return this->m_values[index]; | 257 | 6.09M | } |
Unexecuted instantiation: AK::Span<AK::OptionParser::Option const>::at(unsigned long) const AK::Span<int>::at(unsigned long) const Line | Count | Source | 254 | 3.05k | { | 255 | 3.05k | VERIFY(index < this->m_size); | 256 | 3.05k | return this->m_values[index]; | 257 | 3.05k | } |
Unexecuted instantiation: AK::Span<Web::CSS::Parser::ComponentValue const>::at(unsigned long) const Unexecuted instantiation: AK::Span<Web::CSS::Parser::Token const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::at(unsigned long) const Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage const>::at(unsigned long) const Unexecuted instantiation: AK::Span<AK::FlyString const>::at(unsigned long) const Unexecuted instantiation: AK::Span<Web::Painting::BorderRadiiClip const>::at(unsigned long) const |
258 | | |
259 | | [[nodiscard]] ALWAYS_INLINE constexpr T& at(size_t index) |
260 | 66.7G | { |
261 | 66.7G | VERIFY(index < this->m_size); |
262 | 66.7G | return this->m_values[index]; |
263 | 66.7G | } AK::Span<unsigned char>::at(unsigned long) Line | Count | Source | 260 | 10.7G | { | 261 | 10.7G | VERIFY(index < this->m_size); | 262 | 10.7G | return this->m_values[index]; | 263 | 10.7G | } |
AK::Span<unsigned char const>::at(unsigned long) Line | Count | Source | 260 | 23.8G | { | 261 | 23.8G | VERIFY(index < this->m_size); | 262 | 23.8G | return this->m_values[index]; | 263 | 23.8G | } |
AK::Span<Gfx::JBIG2::AdaptiveTemplatePixel const>::at(unsigned long) Line | Count | Source | 260 | 321M | { | 261 | 321M | VERIFY(index < this->m_size); | 262 | 321M | return this->m_values[index]; | 263 | 321M | } |
AK::Span<float const>::at(unsigned long) Line | Count | Source | 260 | 2.53G | { | 261 | 2.53G | VERIFY(index < this->m_size); | 262 | 2.53G | return this->m_values[index]; | 263 | 2.53G | } |
AK::Span<unsigned short const>::at(unsigned long) Line | Count | Source | 260 | 11.4M | { | 261 | 11.4M | VERIFY(index < this->m_size); | 262 | 11.4M | return this->m_values[index]; | 263 | 11.4M | } |
CCITTDecoder.cpp:AK::Span<Gfx::CCITT::(anonymous namespace)::Change>::at(unsigned long) Line | Count | Source | 260 | 151k | { | 261 | 151k | VERIFY(index < this->m_size); | 262 | 151k | return this->m_values[index]; | 263 | 151k | } |
AK::Span<Gfx::JPEG2000::SubBand const>::at(unsigned long) Line | Count | Source | 260 | 39.4k | { | 261 | 39.4k | VERIFY(index < this->m_size); | 262 | 39.4k | return this->m_values[index]; | 263 | 39.4k | } |
AK::Span<float>::at(unsigned long) Line | Count | Source | 260 | 2.65G | { | 261 | 2.65G | VERIFY(index < this->m_size); | 262 | 2.65G | return this->m_values[index]; | 263 | 2.65G | } |
Unexecuted instantiation: AK::Span<Gfx::ChannelInfo>::at(unsigned long) Unexecuted instantiation: AK::Span<Gfx::Channel>::at(unsigned long) AK::Span<int>::at(unsigned long) Line | Count | Source | 260 | 23.1G | { | 261 | 23.1G | VERIFY(index < this->m_size); | 262 | 23.1G | return this->m_values[index]; | 263 | 23.1G | } |
Unexecuted instantiation: AK::Span<Gfx::Frame>::at(unsigned long) AK::Span<unsigned int>::at(unsigned long) Line | Count | Source | 260 | 32.8M | { | 261 | 32.8M | VERIFY(index < this->m_size); | 262 | 32.8M | return this->m_values[index]; | 263 | 32.8M | } |
AK::Span<Gfx::Color const>::at(unsigned long) Line | Count | Source | 260 | 180k | { | 261 | 180k | VERIFY(index < this->m_size); | 262 | 180k | return this->m_values[index]; | 263 | 180k | } |
AK::Span<Gfx::TinyVGDecodedImageData::DrawCommand const>::at(unsigned long) Line | Count | Source | 260 | 440k | { | 261 | 440k | VERIFY(index < this->m_size); | 262 | 440k | return this->m_values[index]; | 263 | 440k | } |
AK::Span<Gfx::ColorStop const>::at(unsigned long) Line | Count | Source | 260 | 16.4M | { | 261 | 16.4M | VERIFY(index < this->m_size); | 262 | 16.4M | return this->m_values[index]; | 263 | 16.4M | } |
AK::Span<Gfx::Line<float> const>::at(unsigned long) Line | Count | Source | 260 | 88.9M | { | 261 | 88.9M | VERIFY(index < this->m_size); | 262 | 88.9M | return this->m_values[index]; | 263 | 88.9M | } |
AK::Span<signed char const>::at(unsigned long) Line | Count | Source | 260 | 267M | { | 261 | 267M | VERIFY(index < this->m_size); | 262 | 267M | return this->m_values[index]; | 263 | 267M | } |
Unexecuted instantiation: AK::Span<Gfx::Point<int> const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned int> const>::at(unsigned long) Unexecuted instantiation: AK::Span<OpenType::EBLC::IndexSubTableArray const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::at(unsigned long) Unexecuted instantiation: AK::Span<Gfx::Point<float> const>::at(unsigned long) AK::Span<unsigned long const>::at(unsigned long) Line | Count | Source | 260 | 1.99G | { | 261 | 1.99G | VERIFY(index < this->m_size); | 262 | 1.99G | return this->m_values[index]; | 263 | 1.99G | } |
AK::Span<AK::TypeErasedParameter const>::at(unsigned long) Line | Count | Source | 260 | 192M | { | 261 | 192M | VERIFY(index < this->m_size); | 262 | 192M | return this->m_values[index]; | 263 | 192M | } |
AK::Span<unsigned long>::at(unsigned long) Line | Count | Source | 260 | 46.8M | { | 261 | 46.8M | VERIFY(index < this->m_size); | 262 | 46.8M | return this->m_values[index]; | 263 | 46.8M | } |
Unexecuted instantiation: AK::Span<addrinfo const>::at(unsigned long) Unexecuted instantiation: EventLoopImplementationUnix.cpp:AK::Span<Core::(anonymous namespace)::EventLoopTimeout* const>::at(unsigned long) AK::Span<AK::StringView const>::at(unsigned long) Line | Count | Source | 260 | 6.04k | { | 261 | 6.04k | VERIFY(index < this->m_size); | 262 | 6.04k | return this->m_values[index]; | 263 | 6.04k | } |
Unexecuted instantiation: AK::Span<pollfd>::at(unsigned long) AK::Span<unsigned int const>::at(unsigned long) Line | Count | Source | 260 | 51 | { | 261 | 51 | VERIFY(index < this->m_size); | 262 | 51 | return this->m_values[index]; | 263 | 51 | } |
AK::Span<Unicode::SpecialCasing const>::at(unsigned long) Line | Count | Source | 260 | 5.73k | { | 261 | 5.73k | VERIFY(index < this->m_size); | 262 | 5.73k | return this->m_values[index]; | 263 | 5.73k | } |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::at(unsigned long) AK::Span<short const>::at(unsigned long) Line | Count | Source | 260 | 65.5M | { | 261 | 65.5M | VERIFY(index < this->m_size); | 262 | 65.5M | return this->m_values[index]; | 263 | 65.5M | } |
AK::Span<char const>::at(unsigned long) Line | Count | Source | 260 | 50.3M | { | 261 | 50.3M | VERIFY(index < this->m_size); | 262 | 50.3M | return this->m_values[index]; | 263 | 50.3M | } |
Unexecuted instantiation: AK::Span<JS::Bytecode::Operand const>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::Value const>::at(unsigned long) AK::Span<JS::Bytecode::ScopedOperand const>::at(unsigned long) Line | Count | Source | 260 | 469k | { | 261 | 469k | VERIFY(index < this->m_size); | 262 | 469k | return this->m_values[index]; | 263 | 469k | } |
Unexecuted instantiation: AK::Span<AK::Optional<JS::Bytecode::ScopedOperand> const>::at(unsigned long) AK::Span<JS::CallExpressionArgument const>::at(unsigned long) Line | Count | Source | 260 | 996 | { | 261 | 996 | VERIFY(index < this->m_size); | 262 | 996 | return this->m_values[index]; | 263 | 996 | } |
Unexecuted instantiation: AK::Span<JS::Value>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::String const>::at(unsigned long) Unexecuted instantiation: AK::Span<TimeZone::TimeZoneIdentifier const>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::Intl::PatternPartition const>::at(unsigned long) Unexecuted instantiation: AK::Span<Locale::CalendarRangePattern const>::at(unsigned long) Unexecuted instantiation: AK::Span<Locale::PluralCategory const>::at(unsigned long) AK::Span<int const>::at(unsigned long) Line | Count | Source | 260 | 564k | { | 261 | 564k | VERIFY(index < this->m_size); | 262 | 564k | return this->m_values[index]; | 263 | 564k | } |
Unexecuted instantiation: AK::Span<long const>::at(unsigned long) Unexecuted instantiation: AK::Span<double const>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::Temporal::CalendarMethod const>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::Temporal::TimeZoneMethod const>::at(unsigned long) AK::Span<JS::Position>::at(unsigned long) Line | Count | Source | 260 | 5.45k | { | 261 | 5.45k | VERIFY(index < this->m_size); | 262 | 5.45k | return this->m_values[index]; | 263 | 5.45k | } |
AK::Span<regex::ByteCode>::at(unsigned long) Line | Count | Source | 260 | 54.4M | { | 261 | 54.4M | VERIFY(index < this->m_size); | 262 | 54.4M | return this->m_values[index]; | 263 | 54.4M | } |
AK::Span<unsigned short>::at(unsigned long) Line | Count | Source | 260 | 605M | { | 261 | 605M | VERIFY(index < this->m_size); | 262 | 605M | return this->m_values[index]; | 263 | 605M | } |
Unexecuted instantiation: AK::Span<Audio::Sample const>::at(unsigned long) AK::Span<Audio::Sample>::at(unsigned long) Line | Count | Source | 260 | 5.54M | { | 261 | 5.54M | VERIFY(index < this->m_size); | 262 | 5.54M | return this->m_values[index]; | 263 | 5.54M | } |
AK::Span<short>::at(unsigned long) Line | Count | Source | 260 | 17.2M | { | 261 | 17.2M | VERIFY(index < this->m_size); | 262 | 17.2M | return this->m_values[index]; | 263 | 17.2M | } |
AK::Span<Audio::MP3::Tables::ScaleFactorBand const>::at(unsigned long) Line | Count | Source | 260 | 13.1M | { | 261 | 13.1M | VERIFY(index < this->m_size); | 262 | 13.1M | return this->m_values[index]; | 263 | 13.1M | } |
AK::Span<Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanXY> const>::at(unsigned long) Line | Count | Source | 260 | 12.4M | { | 261 | 12.4M | VERIFY(index < this->m_size); | 262 | 12.4M | return this->m_values[index]; | 263 | 12.4M | } |
AK::Span<Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanVWXY> const>::at(unsigned long) Line | Count | Source | 260 | 3.11M | { | 261 | 3.11M | VERIFY(index < this->m_size); | 262 | 3.11M | return this->m_values[index]; | 263 | 3.11M | } |
Unexecuted instantiation: AK::Span<AK::Variant<AK::String, long, Shell::Arithmetic::Operator> >::at(unsigned long) Unexecuted instantiation: AK::Span<Shell::Shell::RunnablePath>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::StringView>::at(unsigned long) Unexecuted instantiation: AK::Span<Line::XtermSuggestionDisplay::PageRange>::at(unsigned long) Unexecuted instantiation: AK::Span<Web::CSS::PropertyID const>::at(unsigned long) Unexecuted instantiation: AK::Span<Web::CSS::Parser::ComponentValue const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::Span<unsigned char const> >::at(unsigned long) Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage const>::at(unsigned long) Unexecuted instantiation: AK::Span<Web::HTML::SelectedFile>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::HTML::VideoTrack> >::at(unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::FileAPI::Blob> const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::ByteString const>::at(unsigned long) Unexecuted instantiation: AK::Span<Web::HTML::DragDataStoreItem const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const>::at(unsigned long) Unexecuted instantiation: AK::Span<Web::SVG::Transform const>::at(unsigned long) Unexecuted instantiation: AK::Span<Web::SVG::PathInstruction const>::at(unsigned long) Unexecuted instantiation: AK::Span<AK::FlyString const>::at(unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::UIEvents::PointerEvent> const>::at(unsigned long) Unexecuted instantiation: AK::Span<Wasm::Validator::StackEntry const>::at(unsigned long) AK::Span<long>::at(unsigned long) Line | Count | Source | 260 | 59.3M | { | 261 | 59.3M | VERIFY(index < this->m_size); | 262 | 59.3M | return this->m_values[index]; | 263 | 59.3M | } |
AK::Span<bool>::at(unsigned long) Line | Count | Source | 260 | 67.0M | { | 261 | 67.0M | VERIFY(index < this->m_size); | 262 | 67.0M | return this->m_values[index]; | 263 | 67.0M | } |
Unexecuted instantiation: AK::Span<Gfx::Color>::at(unsigned long) Unexecuted instantiation: AK::Span<Wasm::ValueType const>::at(unsigned long) Unexecuted instantiation: AK::Span<Wasm::Value>::at(unsigned long) Unexecuted instantiation: AK::Span<SQL::Value const>::at(unsigned long) |
264 | | |
265 | | [[nodiscard]] ALWAYS_INLINE constexpr T const& first() const |
266 | 529k | { |
267 | 529k | return this->at(0); |
268 | 529k | } |
269 | | |
270 | | [[nodiscard]] ALWAYS_INLINE constexpr T& first() |
271 | 152k | { |
272 | 152k | return this->at(0); |
273 | 152k | } Unexecuted instantiation: AK::Span<Gfx::ColorStop const>::first() AK::Span<Gfx::Line<float> const>::first() Line | Count | Source | 271 | 152k | { | 272 | 152k | return this->at(0); | 273 | 152k | } |
Unexecuted instantiation: AK::Span<unsigned char const>::first() Unexecuted instantiation: AK::Span<AK::Variant<AK::String, long, Shell::Arithmetic::Operator> >::first() |
274 | | |
275 | | [[nodiscard]] ALWAYS_INLINE constexpr T const& last() const |
276 | 166M | { |
277 | 166M | return this->at(this->size() - 1); |
278 | 166M | } AK::Span<Gfx::Point<float> const>::last() const Line | Count | Source | 276 | 81.5M | { | 277 | 81.5M | return this->at(this->size() - 1); | 278 | 81.5M | } |
AK::Span<Gfx::ColorStop const>::last() const Line | Count | Source | 276 | 85.0M | { | 277 | 85.0M | return this->at(this->size() - 1); | 278 | 85.0M | } |
Unexecuted instantiation: AK::Span<OpenType::Hmtx::LongHorMetric const>::last() const Unexecuted instantiation: AK::Span<unsigned long>::last() const Unexecuted instantiation: AK::Span<unsigned long const>::last() const Unexecuted instantiation: AK::Span<unsigned int>::last() const |
279 | | |
280 | | [[nodiscard]] ALWAYS_INLINE constexpr T& last() |
281 | 11.2M | { |
282 | 11.2M | return this->at(this->size() - 1); |
283 | 11.2M | } Unexecuted instantiation: AK::Span<unsigned char const>::last() AK::Span<Gfx::ColorStop const>::last() Line | Count | Source | 281 | 11.2M | { | 282 | 11.2M | return this->at(this->size() - 1); | 283 | 11.2M | } |
AK::Span<unsigned char>::last() Line | Count | Source | 281 | 5.33k | { | 282 | 5.33k | return this->at(this->size() - 1); | 283 | 5.33k | } |
Unexecuted instantiation: AK::Span<JS::Value>::last() Unexecuted instantiation: AK::Span<AK::StringView>::last() |
284 | | |
285 | | [[nodiscard]] ALWAYS_INLINE constexpr T const& operator[](size_t index) const |
286 | 939M | { |
287 | 939M | return at(index); |
288 | 939M | } AK::Span<unsigned char const>::operator[](unsigned long) const Line | Count | Source | 286 | 21.1M | { | 287 | 21.1M | return at(index); | 288 | 21.1M | } |
AK::Span<Gfx::Point<float> const>::operator[](unsigned long) const Line | Count | Source | 286 | 90.2M | { | 287 | 90.2M | return at(index); | 288 | 90.2M | } |
AK::Span<Gfx::JBIG2::Code const>::operator[](unsigned long) const Line | Count | Source | 286 | 8.67k | { | 287 | 8.67k | return at(index); | 288 | 8.67k | } |
Unexecuted instantiation: AK::Span<unsigned int const>::operator[](unsigned long) const AK::Span<unsigned char>::operator[](unsigned long) const Line | Count | Source | 286 | 1 | { | 287 | 1 | return at(index); | 288 | 1 | } |
Unexecuted instantiation: AK::Span<OpenType::Hmtx::LongHorMetric const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<AK::BigEndian<short> const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<OpenType::Name::NameRecord const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<OpenType::Kern::Format0Pair const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<OpenType::CBLC::BitmapSize const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<OpenType::FeatureRecord const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::operator[](unsigned long) const AK::Span<unsigned long>::operator[](unsigned long) const Line | Count | Source | 286 | 2.93M | { | 287 | 2.93M | return at(index); | 288 | 2.93M | } |
AK::Span<unsigned long const>::operator[](unsigned long) const Line | Count | Source | 286 | 819M | { | 287 | 819M | return at(index); | 288 | 819M | } |
Unexecuted instantiation: AK::Span<unsigned short const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<JS::Value const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<AK::String const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<unsigned int>::operator[](unsigned long) const AK::Span<Audio::MP3::Tables::ScaleFactorBand const>::operator[](unsigned long) const Line | Count | Source | 286 | 6.09M | { | 287 | 6.09M | return at(index); | 288 | 6.09M | } |
Unexecuted instantiation: AK::Span<AK::StringView>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<AK::OptionParser::Option const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<Web::CSS::Parser::ComponentValue const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<Web::CSS::Parser::Token const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<AK::FlyString const>::operator[](unsigned long) const Unexecuted instantiation: AK::Span<Web::Painting::BorderRadiiClip const>::operator[](unsigned long) const |
289 | | |
290 | | void reverse() |
291 | | { |
292 | | for (size_t i = 0; i < size() / 2; ++i) |
293 | | AK::swap(at(i), at(size() - i - 1)); |
294 | | } |
295 | | |
296 | | [[nodiscard]] ALWAYS_INLINE constexpr T& operator[](size_t index) |
297 | 66.5G | { |
298 | 66.5G | return at(index); |
299 | 66.5G | } AK::Span<unsigned char>::operator[](unsigned long) Line | Count | Source | 297 | 10.7G | { | 298 | 10.7G | return at(index); | 299 | 10.7G | } |
AK::Span<unsigned char const>::operator[](unsigned long) Line | Count | Source | 297 | 23.7G | { | 298 | 23.7G | return at(index); | 299 | 23.7G | } |
AK::Span<Gfx::JBIG2::AdaptiveTemplatePixel const>::operator[](unsigned long) Line | Count | Source | 297 | 321M | { | 298 | 321M | return at(index); | 299 | 321M | } |
AK::Span<float const>::operator[](unsigned long) Line | Count | Source | 297 | 2.53G | { | 298 | 2.53G | return at(index); | 299 | 2.53G | } |
AK::Span<unsigned short const>::operator[](unsigned long) Line | Count | Source | 297 | 11.4M | { | 298 | 11.4M | return at(index); | 299 | 11.4M | } |
CCITTDecoder.cpp:AK::Span<Gfx::CCITT::(anonymous namespace)::Change>::operator[](unsigned long) Line | Count | Source | 297 | 151k | { | 298 | 151k | return at(index); | 299 | 151k | } |
AK::Span<Gfx::JPEG2000::SubBand const>::operator[](unsigned long) Line | Count | Source | 297 | 39.4k | { | 298 | 39.4k | return at(index); | 299 | 39.4k | } |
AK::Span<float>::operator[](unsigned long) Line | Count | Source | 297 | 2.65G | { | 298 | 2.65G | return at(index); | 299 | 2.65G | } |
Unexecuted instantiation: AK::Span<Gfx::ChannelInfo>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Gfx::Channel>::operator[](unsigned long) AK::Span<int>::operator[](unsigned long) Line | Count | Source | 297 | 23.1G | { | 298 | 23.1G | return at(index); | 299 | 23.1G | } |
Unexecuted instantiation: AK::Span<Gfx::Frame>::operator[](unsigned long) AK::Span<unsigned int>::operator[](unsigned long) Line | Count | Source | 297 | 32.8M | { | 298 | 32.8M | return at(index); | 299 | 32.8M | } |
AK::Span<Gfx::Color const>::operator[](unsigned long) Line | Count | Source | 297 | 180k | { | 298 | 180k | return at(index); | 299 | 180k | } |
AK::Span<Gfx::TinyVGDecodedImageData::DrawCommand const>::operator[](unsigned long) Line | Count | Source | 297 | 440k | { | 298 | 440k | return at(index); | 299 | 440k | } |
AK::Span<Gfx::ColorStop const>::operator[](unsigned long) Line | Count | Source | 297 | 5.20M | { | 298 | 5.20M | return at(index); | 299 | 5.20M | } |
AK::Span<Gfx::Line<float> const>::operator[](unsigned long) Line | Count | Source | 297 | 88.7M | { | 298 | 88.7M | return at(index); | 299 | 88.7M | } |
AK::Span<signed char const>::operator[](unsigned long) Line | Count | Source | 297 | 267M | { | 298 | 267M | return at(index); | 299 | 267M | } |
Unexecuted instantiation: AK::Span<Gfx::Point<int> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned int> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<OpenType::EBLC::IndexSubTableArray const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::BigEndian<unsigned short> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Gfx::Point<float> const>::operator[](unsigned long) AK::Span<unsigned long const>::operator[](unsigned long) Line | Count | Source | 297 | 1.99G | { | 298 | 1.99G | return at(index); | 299 | 1.99G | } |
AK::Span<unsigned long>::operator[](unsigned long) Line | Count | Source | 297 | 4.87M | { | 298 | 4.87M | return at(index); | 299 | 4.87M | } |
Unexecuted instantiation: AK::Span<addrinfo const>::operator[](unsigned long) Unexecuted instantiation: EventLoopImplementationUnix.cpp:AK::Span<Core::(anonymous namespace)::EventLoopTimeout* const>::operator[](unsigned long) AK::Span<AK::StringView const>::operator[](unsigned long) Line | Count | Source | 297 | 6.04k | { | 298 | 6.04k | return at(index); | 299 | 6.04k | } |
Unexecuted instantiation: AK::Span<pollfd>::operator[](unsigned long) AK::Span<unsigned int const>::operator[](unsigned long) Line | Count | Source | 297 | 51 | { | 298 | 51 | return at(index); | 299 | 51 | } |
AK::Span<Unicode::SpecialCasing const>::operator[](unsigned long) Line | Count | Source | 297 | 5.73k | { | 298 | 5.73k | return at(index); | 299 | 5.73k | } |
Unexecuted instantiation: AK::Span<Unicode::CaseFolding const>::operator[](unsigned long) AK::Span<short const>::operator[](unsigned long) Line | Count | Source | 297 | 65.5M | { | 298 | 65.5M | return at(index); | 299 | 65.5M | } |
AK::Span<char const>::operator[](unsigned long) Line | Count | Source | 297 | 50.3M | { | 298 | 50.3M | return at(index); | 299 | 50.3M | } |
Unexecuted instantiation: AK::Span<JS::Bytecode::Operand const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::Value const>::operator[](unsigned long) AK::Span<JS::Bytecode::ScopedOperand const>::operator[](unsigned long) Line | Count | Source | 297 | 469k | { | 298 | 469k | return at(index); | 299 | 469k | } |
Unexecuted instantiation: AK::Span<AK::Optional<JS::Bytecode::ScopedOperand> const>::operator[](unsigned long) AK::Span<JS::CallExpressionArgument const>::operator[](unsigned long) Line | Count | Source | 297 | 996 | { | 298 | 996 | return at(index); | 299 | 996 | } |
Unexecuted instantiation: AK::Span<JS::Value>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::String const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<TimeZone::TimeZoneIdentifier const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::Intl::PatternPartition const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Locale::CalendarRangePattern const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Locale::PluralCategory const>::operator[](unsigned long) AK::Span<int const>::operator[](unsigned long) Line | Count | Source | 297 | 564k | { | 298 | 564k | return at(index); | 299 | 564k | } |
Unexecuted instantiation: AK::Span<long const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<double const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::Temporal::CalendarMethod const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::Temporal::TimeZoneMethod const>::operator[](unsigned long) AK::Span<JS::Position>::operator[](unsigned long) Line | Count | Source | 297 | 5.45k | { | 298 | 5.45k | return at(index); | 299 | 5.45k | } |
AK::Span<regex::ByteCode>::operator[](unsigned long) Line | Count | Source | 297 | 54.4M | { | 298 | 54.4M | return at(index); | 299 | 54.4M | } |
AK::Span<unsigned short>::operator[](unsigned long) Line | Count | Source | 297 | 605M | { | 298 | 605M | return at(index); | 299 | 605M | } |
Unexecuted instantiation: AK::Span<Audio::Sample const>::operator[](unsigned long) AK::Span<Audio::Sample>::operator[](unsigned long) Line | Count | Source | 297 | 5.54M | { | 298 | 5.54M | return at(index); | 299 | 5.54M | } |
AK::Span<short>::operator[](unsigned long) Line | Count | Source | 297 | 17.2M | { | 298 | 17.2M | return at(index); | 299 | 17.2M | } |
AK::Span<Audio::MP3::Tables::ScaleFactorBand const>::operator[](unsigned long) Line | Count | Source | 297 | 13.1M | { | 298 | 13.1M | return at(index); | 299 | 13.1M | } |
AK::Span<Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanXY> const>::operator[](unsigned long) Line | Count | Source | 297 | 12.4M | { | 298 | 12.4M | return at(index); | 299 | 12.4M | } |
AK::Span<Audio::MP3::Tables::Huffman::HuffmanNode<Audio::MP3::Tables::Huffman::HuffmanVWXY> const>::operator[](unsigned long) Line | Count | Source | 297 | 3.11M | { | 298 | 3.11M | return at(index); | 299 | 3.11M | } |
Unexecuted instantiation: AK::Span<Shell::Shell::RunnablePath>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::StringView>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Line::XtermSuggestionDisplay::PageRange>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Web::CSS::PropertyID const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::Variant<JS::NonnullGCPtr<Web::DOM::Element>, JS::NonnullGCPtr<Web::DOM::Text> > const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::Span<unsigned char const> >::operator[](unsigned long) Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Web::HTML::SelectedFile>::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::HTML::VideoTrack> >::operator[](unsigned long) Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<Web::FileAPI::Blob> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::FilterOperation::Blur, Web::CSS::FilterOperation::DropShadow, Web::CSS::FilterOperation::HueRotate, Web::CSS::FilterOperation::Color> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::ByteString const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Web::HTML::DragDataStoreItem const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<AK::Variant<Web::CSS::ResolvedFilter::Blur, Web::CSS::ResolvedFilter::DropShadow, Web::CSS::ResolvedFilter::HueRotate, Web::CSS::ResolvedFilter::Color> const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Web::SVG::Transform const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Web::SVG::PathInstruction const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Wasm::Validator::StackEntry const>::operator[](unsigned long) AK::Span<long>::operator[](unsigned long) Line | Count | Source | 297 | 59.3M | { | 298 | 59.3M | return at(index); | 299 | 59.3M | } |
AK::Span<bool>::operator[](unsigned long) Line | Count | Source | 297 | 67.0M | { | 298 | 67.0M | return at(index); | 299 | 67.0M | } |
Unexecuted instantiation: AK::Span<Wasm::ValueType const>::operator[](unsigned long) Unexecuted instantiation: AK::Span<Wasm::Value>::operator[](unsigned long) Unexecuted instantiation: AK::Span<SQL::Value const>::operator[](unsigned long) |
300 | | |
301 | | constexpr bool operator==(Span const& other) const |
302 | 1.06M | { |
303 | 1.06M | if (size() != other.size()) |
304 | 18.4k | return false; |
305 | | |
306 | 1.04M | return TypedTransfer<T>::compare(data(), other.data(), size()); |
307 | 1.06M | } AK::Span<unsigned char const>::operator==(AK::Span<unsigned char const> const&) const Line | Count | Source | 302 | 1.03M | { | 303 | 1.03M | if (size() != other.size()) | 304 | 17.0k | return false; | 305 | | | 306 | 1.01M | return TypedTransfer<T>::compare(data(), other.data(), size()); | 307 | 1.03M | } |
Unexecuted instantiation: AK::Span<unsigned short const>::operator==(AK::Span<unsigned short const> const&) const Unexecuted instantiation: AK::Span<AK::StringView const>::operator==(AK::Span<AK::StringView const> const&) const Unexecuted instantiation: AK::Span<unsigned int const>::operator==(AK::Span<unsigned int const> const&) const AK::Span<int const>::operator==(AK::Span<int const> const&) const Line | Count | Source | 302 | 27.3k | { | 303 | 27.3k | if (size() != other.size()) | 304 | 1.43k | return false; | 305 | | | 306 | 25.8k | return TypedTransfer<T>::compare(data(), other.data(), size()); | 307 | 27.3k | } |
Unexecuted instantiation: AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue> const>::operator==(AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue> const> const&) const Unexecuted instantiation: AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue const> const>::operator==(AK::Span<Web::CSS::ValueComparingNonnullRefPtr<Web::CSS::CSSStyleValue const> const> const&) const Unexecuted instantiation: AK::Span<AK::Optional<int> const>::operator==(AK::Span<AK::Optional<int> const> const&) const |
308 | | |
309 | | ALWAYS_INLINE constexpr operator ReadonlySpan<T>() const |
310 | 88.5M | { |
311 | 88.5M | return { data(), size() }; |
312 | 88.5M | } AK::Span<unsigned char>::operator AK::Span<unsigned char const>() const Line | Count | Source | 310 | 20.6M | { | 311 | 20.6M | return { data(), size() }; | 312 | 20.6M | } |
AK::Span<Gfx::JBIG2::Code>::operator AK::Span<Gfx::JBIG2::Code const>() const Line | Count | Source | 310 | 45 | { | 311 | 45 | return { data(), size() }; | 312 | 45 | } |
Unexecuted instantiation: AK::Span<Gfx::ChannelInfo>::operator AK::Span<Gfx::ChannelInfo const>() const AK::Span<Gfx::Color>::operator AK::Span<Gfx::Color const>() const Line | Count | Source | 310 | 1.27k | { | 311 | 1.27k | return { data(), size() }; | 312 | 1.27k | } |
AK::Span<unsigned int>::operator AK::Span<unsigned int const>() const Line | Count | Source | 310 | 102 | { | 311 | 102 | return { data(), size() }; | 312 | 102 | } |
Unexecuted instantiation: AK::Span<Unicode::BlockName>::operator AK::Span<Unicode::BlockName const>() const Unexecuted instantiation: AK::Span<JS::Value>::operator AK::Span<JS::Value const>() const AK::Span<JS::CallExpressionArgument>::operator AK::Span<JS::CallExpressionArgument const>() const Line | Count | Source | 310 | 990 | { | 311 | 990 | return { data(), size() }; | 312 | 990 | } |
Unexecuted instantiation: AK::Span<JS::DeclarativeEnvironment::Binding>::operator AK::Span<JS::DeclarativeEnvironment::Binding const>() const Unexecuted instantiation: AK::Span<AK::StringView>::operator AK::Span<AK::StringView const>() const AK::Span<unsigned long>::operator AK::Span<unsigned long const>() const Line | Count | Source | 310 | 49.4M | { | 311 | 49.4M | return { data(), size() }; | 312 | 49.4M | } |
AK::Span<Shell::AST::Position>::operator AK::Span<Shell::AST::Position const>() const Line | Count | Source | 310 | 891k | { | 311 | 891k | return { data(), size() }; | 312 | 891k | } |
AK::Span<Shell::Posix::Token>::operator AK::Span<Shell::Posix::Token const>() const Line | Count | Source | 310 | 17.5M | { | 311 | 17.5M | return { data(), size() }; | 312 | 17.5M | } |
AK::Span<int>::operator AK::Span<int const>() const Line | Count | Source | 310 | 27.3k | { | 311 | 27.3k | return { data(), size() }; | 312 | 27.3k | } |
Unexecuted instantiation: AK::Span<Web::Bindings::KeyUsage>::operator AK::Span<Web::Bindings::KeyUsage const>() const Unexecuted instantiation: AK::Span<AK::String>::operator AK::Span<AK::String const>() const Unexecuted instantiation: AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> >::operator AK::Span<JS::NonnullGCPtr<JS::PromiseCapability> const>() const Unexecuted instantiation: AK::Span<float>::operator AK::Span<float const>() const Unexecuted instantiation: AK::Span<double>::operator AK::Span<double const>() const |
313 | | }; |
314 | | |
315 | | template<typename T> |
316 | | struct Traits<Span<T>> : public DefaultTraits<Span<T>> { |
317 | | static unsigned hash(Span<T> const& span) |
318 | 0 | { |
319 | 0 | unsigned hash = 0; |
320 | 0 | for (auto const& value : span) { |
321 | 0 | auto value_hash = Traits<T>::hash(value); |
322 | 0 | hash = pair_int_hash(hash, value_hash); |
323 | 0 | } |
324 | 0 | return hash; |
325 | 0 | } |
326 | | |
327 | 0 | constexpr static bool is_trivial() { return true; } Unexecuted instantiation: AK::Traits<AK::Span<unsigned char const> >::is_trivial() Unexecuted instantiation: AK::Traits<AK::Span<unsigned long> >::is_trivial() Unexecuted instantiation: AK::Traits<AK::Span<unsigned long const> >::is_trivial() |
328 | | }; |
329 | | |
330 | | template<typename T> |
331 | | using ReadonlySpan = Span<T const>; |
332 | | |
333 | | using ReadonlyBytes = ReadonlySpan<u8>; |
334 | | using Bytes = Span<u8>; |
335 | | |
336 | | template<typename T> |
337 | | requires(IsTrivial<T>) |
338 | | ReadonlyBytes to_readonly_bytes(Span<T> span) |
339 | | { |
340 | | return ReadonlyBytes { static_cast<void const*>(span.data()), span.size() * sizeof(T) }; |
341 | | } |
342 | | |
343 | | template<typename T> |
344 | | requires(IsTrivial<T> && !IsConst<T>) |
345 | | Bytes to_bytes(Span<T> span) |
346 | | { |
347 | | return Bytes { static_cast<void*>(span.data()), span.size() * sizeof(T) }; |
348 | | } |
349 | | |
350 | | } |
351 | | |
352 | | #if USING_AK_GLOBALLY |
353 | | using AK::Bytes; |
354 | | using AK::ReadonlyBytes; |
355 | | using AK::ReadonlySpan; |
356 | | using AK::Span; |
357 | | using AK::to_bytes; |
358 | | using AK::to_readonly_bytes; |
359 | | #endif |