Compare commits

..
45 Commits
Author SHA1 Message Date
Michele Caini 1e23a11311 API reference v3.15.0 2025-03-19 15:49:42 +01:00
Michele Caini 4b4d0ab7ed API reference v3.14.0 2024-10-23 15:07:48 +02:00
Michele Caini 9a9e9e0bd7 API reference v3.13.0 2024-01-18 16:49:23 +01:00
Michele Caini 7cf7699bab API reference v3.12.0 2023-06-15 11:47:04 +02:00
Michele Caini d914ed4a81 API reference v3.11.0 2022-11-09 12:39:12 +01:00
Michele Caini 378182736c API reference v3.10.0 2022-04-18 19:54:29 +02:00
Michele Caini 6fdc43199c API reference v3.9.0 2021-12-21 13:20:51 +01:00
Michele Caini 8b79c83282 API reference v3.8.1 2021-07-28 10:12:19 +02:00
Michele Caini 1546c8982e API reference v3.8.0 2021-07-21 14:02:37 +02:00
Michele Caini 0c2d447d2c API reference v3.7.0 2021-04-10 16:09:25 +02:00
Michele Caini 4b578e1085 API reference v3.6.0 2021-01-09 18:58:42 +01:00
Michele Caini c49227d828 API reference v3.5.2 2020-09-22 08:42:41 +02:00
Michele Caini 645aa8a93a API reference v3.5.1 2020-09-04 10:42:05 +02:00
Michele Caini 78795e2da0 API reference v3.5.0 2020-09-01 00:18:55 +02:00
Michele Caini 38227d5bf9 API reference v3.4.0 2020-05-12 00:28:32 +02:00
Michele Caini 30a3f4ffca API reference v3.3.2 2020-03-07 18:44:24 +01:00
Michele Caini c2bb30156c API reference v3.3.1 2020-02-28 23:49:54 +01:00
Michele Caini ac9898a174 API reference v3.3.0 2020-02-22 15:45:18 +01:00
Michele Caini 765271fe1b API reference v3.2.2 2019-12-19 15:16:07 +01:00
Michele Caini 839e6e4c56 API reference v3.2.1 2019-11-26 14:52:56 +01:00
Michele Caini 401b1db1a0 API reference v3.2.0 2019-10-30 00:07:19 +01:00
Michele Caini c600a6be5e API reference v3.1.1 2019-09-05 15:42:26 +02:00
Michele Caini dbcc605d4e API reference v3.1.0 2019-08-29 16:16:50 +02:00
Michele Caini a483817092 API reference v3.0.0 2019-05-16 16:16:10 +02:00
Michele Caini 3b2e6e9976 API reference v2.7.3 2018-09-02 22:50:44 +02:00
Michele Caini 23df59f209 API reference v2.7.2 2018-08-02 17:38:31 +02:00
Michele Caini 4594898b8e API reference v2.7.1 2018-07-10 16:37:27 +02:00
Michele Caini 81a9ccc24f API reference v2.7.0 2018-07-10 16:36:42 +02:00
Michele Caini 89909a0db3 API reference v2.6.1 2018-06-04 08:58:07 +02:00
Michele Caini 74f3ad98f0 API reference v2.6.0 2018-05-30 22:49:40 +02:00
Michele Caini 54bad7d09c API reference v2.5.0 2018-04-02 22:52:32 +02:00
Michele Caini 0b1d9b8f02 API reference v2.4.2 2018-02-08 14:59:12 +01:00
Michele Caini eb8199374c API reference v2.4.1 2017-12-29 18:31:01 +01:00
Michele Caini 09085868b1 API reference v2.4.0 2017-12-27 18:02:14 +01:00
Michele Caini 5bad99476d API reference v2.3.0 2017-12-14 23:18:50 +01:00
Michele Caini e9b4a6dd1f API reference v2.2.0 2017-11-15 22:49:45 +01:00
Michele Caini 46c9e66650 API reference v2.1.0 2017-10-28 00:27:46 +02:00
Michele Caini 2dcec44a95 API reference v2.0.1 2017-10-19 16:24:25 +02:00
Michele Caini d7f75d0f68 API reference v2.0.1 2017-10-19 16:20:39 +02:00
Michele Caini a41f714cbd EnTT v2 reference 2017-10-17 13:47:38 +02:00
Michele Caini f6d1f3f5f5 EnTT v2 - api reference 2017-10-16 23:41:44 +02:00
Michele Caini 350bab5c06 WIP: draft doc EnTT v2 2017-10-16 17:24:33 +02:00
Michele Caini 7ef483a07e WIP: draft doc EnTT v2 2017-10-16 17:19:13 +02:00
Michele Caini 067a2f19b8 WIP: draft doc EnTT v2 2017-10-16 15:31:00 +02:00
Michele Caini 5337a33ede gh-pages (draft v2) 2017-10-13 14:00:07 +02:00
2013 changed files with 168283 additions and 162977 deletions
-1
View File
@@ -1 +0,0 @@
test
-1
View File
@@ -1 +0,0 @@
USE_BAZEL_VERSION=6.x
-16
View File
@@ -1,16 +0,0 @@
common --enable_bzlmod
build --enable_platform_specific_config
build --incompatible_enable_cc_toolchain_resolution
build --enable_runfiles
build --incompatible_strict_action_env
# required for googletest
build:linux --cxxopt=-std=c++17
build:macos --cxxopt=-std=c++17
common:ci --announce_rc
common:ci --verbose_failures
common:ci --keep_going
test:ci --test_output=errors
try-import %workspace%/user.bazelrc
-43
View File
@@ -1,43 +0,0 @@
BasedOnStyle: llvm
---
AccessModifierOffset: -4
AlignEscapedNewlines: DontAlign
AllowShortBlocksOnASingleLine: Always
AllowShortEnumsOnASingleLine: true
AllowShortFunctionsOnASingleLine: Empty
AllowShortIfStatementsOnASingleLine: WithoutElse
AllowShortLambdasOnASingleLine: All
AllowShortLoopsOnASingleLine: true
AlwaysBreakTemplateDeclarations: Yes
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeTernaryOperators: true
ColumnLimit: 0
DerivePointerAlignment: false
IncludeCategories:
- Regex: '<[[:alnum:]_]+>'
Priority: 1
- Regex: '<(gtest|gmock)/'
Priority: 2
- Regex: '<[[:alnum:]_./]+>'
Priority: 3
- Regex: '<entt/'
Priority: 4
- Regex: '.*'
Priority: 5
IncludeIsMainRegex: "^$"
IndentPPDirectives: AfterHash
IndentWidth: 4
KeepEmptyLinesAtTheStartOfBlocks: false
Language: Cpp
PointerAlignment: Right
SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: false
SpaceAroundPointerQualifiers: After
SpaceBeforeCaseColon: false
SpaceBeforeCtorInitializerColon: false
SpaceBeforeInheritanceColon: false
SpaceBeforeParens: Never
SpaceBeforeRangeBasedForLoopColon: false
Standard: Latest
TabWidth: 4
UseTab: Never
-48
View File
@@ -1,48 +0,0 @@
Checks: >
bugprone-*,
concurrency-*,
cppcoreguidelines-*,
-cppcoreguidelines-owning-memory,
-cppcoreguidelines-pro-bounds-constant-array-index,
-cppcoreguidelines-pro-type-const-cast,
-cppcoreguidelines-pro-type-member-init,
-cppcoreguidelines-pro-type-reinterpret-cast,
-cppcoreguidelines-pro-type-union-access,
misc-*,
-misc-include-cleaner,
-misc-no-recursion,
modernize-*,
-modernize-use-trailing-return-type,
performance-*,
portability-*,
readability-*,
-readability-function-cognitive-complexity,
-readability-named-parameter,
-readability-uppercase-literal-suffix,
CheckOptions:
- key: cppcoreguidelines-avoid-magic-numbers.IgnoreAllFloatingPointValues
value: true
- key: cppcoreguidelines-avoid-magic-numbers.IgnorePowersOf2IntegerValues
value: true
- key: cppcoreguidelines-special-member-functions.AllowMissingMoveFunctions
value: true
- key: cppcoreguidelines-special-member-functions.AllowMissingMoveFunctionsWhenCopyIsDeleted
value: true
- key: cppcoreguidelines-special-member-functions.AllowSoleDefaultDtor
value: true
- key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
value: true
- key: misc-non-private-member-variables-in-classes.IgnorePublicMemberVariables
value: true
- key: modernize-avoid-c-arrays.AllowStringArrays
value: true
- key: readability-function-cognitive-complexity.IgnoreMacros
value: true
- key: readability-identifier-length.MinimumParameterNameLength
value: 2
- key: readability-identifier-length.MinimumVariableNameLength
value: 2
- key: readability-magic-numbers.IgnoreAllFloatingPointValues
value: true
- key: readability-magic-numbers.IgnorePowersOf2IntegerValues
value: true
-4
View File
@@ -1,4 +0,0 @@
# These are supported funding model platforms
github: skypjack
custom: https://www.paypal.me/skypjack
@@ -1,23 +0,0 @@
name: Bazel Release
on:
release:
types: [published]
jobs:
# A release archive is required for bzlmod
# See: https://blog.bazel.build/2023/02/15/github-archive-checksum.html
bazel-release-archive:
runs-on: ubuntu-latest
continue-on-error: true
permissions:
contents: write
steps:
- uses: actions/setup-go@v5
- run: go install github.com/bazelbuild/buildtools/buildozer@latest
- uses: actions/checkout@v4
- run: ./scripts/sync_bzlmod_version.sh
- run: git archive $GITHUB_REF -o "entt-${GITHUB_REF:10}.tar.gz"
- run: gh release upload ${GITHUB_REF:10} "entt-${GITHUB_REF:10}.tar.gz"
env:
GH_TOKEN: ${{ github.token }}
-23
View File
@@ -1,23 +0,0 @@
name: bazel
on: [push, pull_request]
jobs:
test:
strategy:
matrix:
os:
- ubuntu-latest
- windows-latest
- macos-latest
runs-on: ${{ matrix.os }}
continue-on-error: true
steps:
- uses: actions/checkout@v4
- run: bazelisk test --config=ci ...
working-directory: test
env:
USE_BAZEL_VERSION: 6.x
-139
View File
@@ -1,139 +0,0 @@
name: build
on: [push, pull_request]
jobs:
linux:
timeout-minutes: 15
strategy:
matrix:
os: [ubuntu-latest, ubuntu-24.04]
compiler:
- { pkg: g++, exe: 'g++', version: 9 }
- { pkg: g++, exe: 'g++', version: 10 }
- { pkg: g++, exe: 'g++', version: 11 }
- { pkg: g++, exe: 'g++', version: 12 }
- { pkg: g++, exe: 'g++', version: 13 }
- { pkg: g++, exe: 'g++', version: 14 }
- { pkg: clang, exe: 'clang++', version: 13 }
- { pkg: clang, exe: 'clang++', version: 14 }
- { pkg: clang, exe: 'clang++', version: 15 }
- { pkg: clang, exe: 'clang++', version: 16 }
- { pkg: clang, exe: 'clang++', version: 17 }
- { pkg: clang, exe: 'clang++', version: 18 }
exclude:
- os: ubuntu-latest
compiler: { pkg: g++, exe: 'g++', version: 12 }
- os: ubuntu-latest
compiler: { pkg: g++, exe: 'g++', version: 13 }
- os: ubuntu-latest
compiler: { pkg: g++, exe: 'g++', version: 14 }
- os: ubuntu-latest
compiler: { pkg: clang, exe: 'clang++', version: 16 }
- os: ubuntu-latest
compiler: { pkg: clang, exe: 'clang++', version: 17 }
- os: ubuntu-latest
compiler: { pkg: clang, exe: 'clang++', version: 18 }
- os: ubuntu-24.04
compiler: { pkg: g++, exe: 'g++', version: 9 }
- os: ubuntu-24.04
compiler: { pkg: g++, exe: 'g++', version: 10 }
- os: ubuntu-24.04
compiler: { pkg: g++, exe: 'g++', version: 11 }
- os: ubuntu-24.04
compiler: { pkg: clang, exe: 'clang++', version: 13 }
- os: ubuntu-24.04
compiler: { pkg: clang, exe: 'clang++', version: 14 }
- os: ubuntu-24.04
compiler: { pkg: clang, exe: 'clang++', version: 15 }
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Install compiler
run: |
sudo apt update
sudo apt install -y ${{ matrix.compiler.pkg }}-${{ matrix.compiler.version }}
- name: Compile tests
working-directory: build
env:
CXX: ${{ matrix.compiler.exe }}-${{ matrix.compiler.version }}
run: |
cmake -DENTT_BUILD_TESTING=ON -DENTT_BUILD_LIB=ON -DENTT_BUILD_EXAMPLE=ON ..
make -j4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
windows:
timeout-minutes: 15
strategy:
matrix:
toolset: [default, v142, clang-cl]
include:
- toolset: v142
toolset_option: -T"v142"
- toolset: clang-cl
toolset_option: -T"ClangCl"
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Compile tests
working-directory: build
run: |
cmake -DENTT_BUILD_TESTING=ON -DENTT_BUILD_LIB=ON -DENTT_BUILD_EXAMPLE=ON ${{ matrix.toolset_option }} ..
cmake --build . -j 4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
macos:
timeout-minutes: 15
runs-on: macOS-latest
steps:
- uses: actions/checkout@v4
- name: Compile tests
working-directory: build
run: |
cmake -DENTT_BUILD_TESTING=ON -DENTT_BUILD_LIB=ON -DENTT_BUILD_EXAMPLE=ON ..
make -j4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
extra:
timeout-minutes: 15
strategy:
matrix:
os: [windows-latest, macOS-latest, ubuntu-latest]
id_type: ["std::uint32_t", "std::uint64_t"]
cxx_std: [cxx_std_17, cxx_std_20]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Compile tests
working-directory: build
run: |
cmake -DENTT_BUILD_TESTING=ON -DENTT_CXX_STD=${{ matrix.cxx_std }} -DENTT_ID_TYPE=${{ matrix.id_type }} ..
cmake --build . -j 4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
-38
View File
@@ -1,38 +0,0 @@
name: coverage
on: [push, pull_request]
jobs:
codecov:
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Compile tests
working-directory: build
env:
CXXFLAGS: "--coverage -fno-elide-constructors -fno-inline -fno-default-inline"
CXX: g++
run: |
cmake -DENTT_BUILD_TESTING=ON -DENTT_BUILD_LIB=ON -DENTT_BUILD_EXAMPLE=ON ..
make -j4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
- name: Collect data
working-directory: build
run: |
sudo apt install lcov
lcov -c -d . -o coverage.info
lcov -l coverage.info
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: build/coverage.info
name: EnTT
fail_ci_if_error: true
-39
View File
@@ -1,39 +0,0 @@
name: deploy
on:
release:
types: published
jobs:
homebrew-entt:
timeout-minutes: 5
runs-on: ubuntu-latest
env:
GH_REPO: homebrew-entt
FORMULA: entt.rb
steps:
- uses: actions/checkout@v3
- name: Clone repository
working-directory: build
env:
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
run: git clone https://$GITHUB_ACTOR:$PERSONAL_ACCESS_TOKEN@github.com/$GITHUB_ACTOR/$GH_REPO.git
- name: Prepare formula
working-directory: build
run: |
cd $GH_REPO
curl "https://github.com/${{ github.repository }}/archive/${{ github.ref }}.tar.gz" --location --fail --silent --show-error --output archive.tar.gz
sed -i -e '/url/s/".*"/"'$(echo "https://github.com/${{ github.repository }}/archive/${{ github.ref }}.tar.gz" | sed -e 's/[\/&]/\\&/g')'"/' $FORMULA
sed -i -e '/sha256/s/".*"/"'$(openssl sha256 archive.tar.gz | cut -d " " -f 2)'"/' $FORMULA
- name: Update remote
working-directory: build
run: |
cd $GH_REPO
git config --local user.email "action@github.com"
git config --local user.name "$GITHUB_ACTOR"
git add $FORMULA
git commit -m "Update to ${{ github.ref }}"
git push origin master
-31
View File
@@ -1,31 +0,0 @@
name: sanitizer
on: [push, pull_request]
jobs:
clang:
timeout-minutes: 15
strategy:
matrix:
compiler: [clang++]
id_type: ["std::uint32_t", "std::uint64_t"]
cxx_std: [cxx_std_17, cxx_std_20]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Compile tests
working-directory: build
env:
CXX: ${{ matrix.compiler }}
run: |
cmake -DENTT_USE_SANITIZER=ON -DENTT_BUILD_TESTING=ON -DENTT_BUILD_LIB=ON -DENTT_BUILD_EXAMPLE=ON -DENTT_CXX_STD=${{ matrix.cxx_std }} -DENTT_ID_TYPE=${{ matrix.id_type }} ..
make -j4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
-81
View File
@@ -1,81 +0,0 @@
name: tools
on:
push:
branches:
- tools
jobs:
iwyu:
timeout-minutes: 60
env:
IWYU: "0.22"
LLVM: "18"
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4
- name: Install llvm/clang
# see: https://apt.llvm.org/
run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-$LLVM main"
sudo apt update
sudo apt remove -y "llvm*"
sudo apt remove -y "libclang-dev*"
sudo apt remove -y "clang*"
sudo apt install -y llvm-$LLVM-dev
sudo apt install -y libclang-$LLVM-dev
sudo apt install -y clang-$LLVM
- name: Compile iwyu
# see: https://github.com/include-what-you-use/include-what-you-use
working-directory: build
run: |
git clone https://github.com/include-what-you-use/include-what-you-use.git --branch $IWYU --depth 1
mkdir include-what-you-use/build
cd include-what-you-use/build
cmake -DCMAKE_C_COMPILER=clang-$LLVM \
-DCMAKE_CXX_COMPILER=clang++-$LLVM \
-DCMAKE_INSTALL_PREFIX=./ \
..
make -j4
bin/include-what-you-use --version
- name: Compile tests
working-directory: build
run: |
export PATH=$PATH:${GITHUB_WORKSPACE}/build/include-what-you-use/build/bin
cmake -DCMAKE_C_COMPILER=clang-$LLVM \
-DCMAKE_CXX_COMPILER=clang++-$LLVM \
-DENTT_BUILD_TESTING=ON \
-DENTT_BUILD_BENCHMARK=ON \
-DENTT_BUILD_EXAMPLE=ON \
-DENTT_BUILD_LIB=ON \
-DENTT_BUILD_SNAPSHOT=ON \
-DCMAKE_CXX_INCLUDE_WHAT_YOU_USE="include-what-you-use;-Xiwyu;--mapping_file=${GITHUB_WORKSPACE}/entt.imp;-Xiwyu;--no_fwd_decls;-Xiwyu;--verbose=1" \
..
make -j4
clang-tidy:
timeout-minutes: 60
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4
- name: Compile tests
working-directory: build
env:
CXX: clang++
run: |
cmake -DENTT_BUILD_TESTING=ON -DENTT_BUILD_LIB=ON -DENTT_BUILD_EXAMPLE=ON -DENTT_USE_CLANG_TIDY=ON ..
make -j4
- name: Run tests
working-directory: build
env:
CTEST_OUTPUT_ON_FAILURE: 1
run: ctest -C Debug -j4
+1 -15
View File
@@ -1,16 +1,2 @@
# Conan
conan/test_package/build
# IDEs
*.user
.idea
.vscode
.vs
CMakeSettings.json
cpp.hint
# Bazel
/bazel-*
/test/bazel-*
/user.bazelrc
*.bazel.lock
build/*
View File
-56
View File
@@ -1,56 +0,0 @@
# Author
skypjack
# Contributors
alexames
BenediktConze
bjadamson
ceeac
ColinH
corystegel
Croydon
cschreib
cugone
dbacchet
dBagrat
djarek
DNKpp
DonKult
drglove
eliasdaler
erez-o
eugeneko
gale83
ghost
grdowns
Green-Sky
Innokentiy-Alaytsev
Kerndog73
Koward
Lawrencemm
markand
mhammerc
Milerius
Minimonium
morbo84
m-waka
netpoetica
NixAJ
Oortonaut
Paolo-Oliverio
pgruenbacher
prowolf
Qix-
stefanofiorentino
suVrik
szunhammer
The5-1
vblanco20-1
willtunnels
WizardIke
WoLfulus
w1th0utnam3
xissburg
zaucy
-6
View File
@@ -1,6 +0,0 @@
package(default_visibility = ["//visibility:public"])
alias(
name = "entt",
actual = "//src:entt",
)
-334
View File
@@ -1,334 +0,0 @@
# EnTT
cmake_minimum_required(VERSION 3.15.7)
# Read project version
set(ENTT_VERSION_REGEX "#define ENTT_VERSION_.*[ \t]+(.+)")
file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/src/entt/config/version.h" ENTT_VERSION REGEX ${ENTT_VERSION_REGEX})
list(TRANSFORM ENTT_VERSION REPLACE ${ENTT_VERSION_REGEX} "\\1")
string(JOIN "." ENTT_VERSION ${ENTT_VERSION})
# Project configuration
project(
EnTT
VERSION ${ENTT_VERSION}
DESCRIPTION "Gaming meets modern C++ - a fast and reliable entity-component system (ECS) and much more"
HOMEPAGE_URL "https://github.com/skypjack/entt"
LANGUAGES C CXX
)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Debug)
endif()
message(VERBOSE "*")
message(VERBOSE "* ${PROJECT_NAME} v${PROJECT_VERSION} (${CMAKE_BUILD_TYPE})")
message(VERBOSE "* Copyright (c) 2017-2024 Michele Caini <michele.caini@gmail.com>")
message(VERBOSE "*")
# CMake stuff
list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
# Compiler stuff
option(ENTT_USE_LIBCPP "Use libc++ by adding -stdlib=libc++ flag if available." OFF)
option(ENTT_USE_SANITIZER "Enable sanitizers by adding -fsanitize=address -fno-omit-frame-pointer -fsanitize=undefined flags if available." OFF)
option(ENTT_USE_CLANG_TIDY "Enable static analysis with clang-tidy" OFF)
if(ENTT_USE_LIBCPP)
if(NOT WIN32)
include(CheckCXXSourceCompiles)
include(CMakePushCheckState)
cmake_push_check_state()
set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -stdlib=libc++")
check_cxx_source_compiles("
#include<type_traits>
int main() { return std::is_same_v<int, char>; }
" ENTT_HAS_LIBCPP)
cmake_pop_check_state()
endif()
if(NOT ENTT_HAS_LIBCPP)
message(VERBOSE "The option ENTT_USE_LIBCPP is set but libc++ is not available.")
endif()
endif()
if(ENTT_USE_SANITIZER)
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang|GNU")
set(ENTT_HAS_SANITIZER TRUE CACHE BOOL "" FORCE)
mark_as_advanced(ENTT_HAS_SANITIZER)
endif()
if(NOT ENTT_HAS_SANITIZER)
message(VERBOSE "The option ENTT_USE_SANITIZER is set but sanitizer support is not available.")
endif()
endif()
if(ENTT_USE_CLANG_TIDY)
find_program(ENTT_CLANG_TIDY_EXECUTABLE "clang-tidy")
if(NOT ENTT_CLANG_TIDY_EXECUTABLE)
message(VERBOSE "The option ENTT_USE_CLANG_TIDY is set but clang-tidy executable is not available.")
endif()
endif()
# Add EnTT target
option(ENTT_INCLUDE_HEADERS "Add all EnTT headers to the EnTT target." OFF)
option(ENTT_INCLUDE_NATVIS "Add EnTT natvis files to the EnTT target." OFF)
if(ENTT_INCLUDE_NATVIS)
if(MSVC)
set(ENTT_HAS_NATVIS TRUE CACHE BOOL "" FORCE)
mark_as_advanced(ENTT_HAS_NATVIS)
endif()
if(NOT ENTT_HAS_NATVIS)
message(VERBOSE "The option ENTT_INCLUDE_NATVIS is set but natvis files are not supported. They will not be added to the target.")
endif()
endif()
include(GNUInstallDirs)
add_library(EnTT INTERFACE)
add_library(EnTT::EnTT ALIAS EnTT)
target_include_directories(
EnTT
INTERFACE
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
)
target_compile_features(EnTT INTERFACE cxx_std_17)
if(ENTT_INCLUDE_HEADERS)
target_sources(
EnTT
INTERFACE
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/config/config.h>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/config/macro.h>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/config/version.h>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/container/dense_map.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/container/dense_set.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/container/table.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/container/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/algorithm.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/any.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/attribute.h>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/bit.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/compressed_pair.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/enum.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/family.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/hashed_string.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/ident.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/iterator.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/memory.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/monostate.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/ranges.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/tuple.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/type_info.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/type_traits.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/core/utility.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/component.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/entity.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/group.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/handle.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/mixin.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/helper.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/observer.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/organizer.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/ranges.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/registry.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/runtime_view.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/snapshot.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/sparse_set.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/storage.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entity/view.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/graph/adjacency_matrix.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/graph/dot.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/graph/flow.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/graph/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/locator/locator.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/adl_pointer.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/container.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/context.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/factory.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/meta.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/node.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/pointer.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/policy.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/range.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/resolve.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/template.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/type_traits.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/meta/utility.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/poly/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/poly/poly.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/process/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/process/process.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/process/scheduler.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/resource/cache.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/resource/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/resource/loader.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/resource/resource.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/signal/delegate.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/signal/dispatcher.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/signal/emitter.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/signal/fwd.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/signal/sigh.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/entt.hpp>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/src/entt/fwd.hpp>
)
endif()
if(ENTT_HAS_NATVIS)
target_sources(
EnTT
INTERFACE
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/config.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/container.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/core.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/entity.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/graph.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/locator.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/meta.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/poly.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/process.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/resource.natvis>
$<BUILD_INTERFACE:${EnTT_SOURCE_DIR}/natvis/entt/signal.natvis>
)
endif()
if(ENTT_HAS_SANITIZER)
target_compile_options(EnTT INTERFACE $<$<CONFIG:Debug>:-fsanitize=address -fno-omit-frame-pointer -fsanitize=undefined>)
target_link_libraries(EnTT INTERFACE $<$<CONFIG:Debug>:-fsanitize=address -fno-omit-frame-pointer -fsanitize=undefined>)
endif()
if(ENTT_CLANG_TIDY_EXECUTABLE)
set(CMAKE_CXX_CLANG_TIDY "${ENTT_CLANG_TIDY_EXECUTABLE};--config-file=${EnTT_SOURCE_DIR}/.clang-tidy;--header-filter=${EnTT_SOURCE_DIR}/src/entt/.*")
endif()
if(ENTT_HAS_LIBCPP)
target_compile_options(EnTT BEFORE INTERFACE -stdlib=libc++)
endif()
# Install pkg-config file
include(JoinPaths)
set(EnTT_PKGCONFIG ${CMAKE_CURRENT_BINARY_DIR}/entt.pc)
join_paths(EnTT_PKGCONFIG_INCLUDEDIR "\${prefix}" "${CMAKE_INSTALL_INCLUDEDIR}")
configure_file(
${EnTT_SOURCE_DIR}/cmake/in/entt.pc.in
${EnTT_PKGCONFIG}
@ONLY
)
install(
FILES ${EnTT_PKGCONFIG}
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
)
# Install EnTT
include(CMakePackageConfigHelpers)
install(
TARGETS EnTT
EXPORT EnTTTargets
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
write_basic_package_version_file(
EnTTConfigVersion.cmake
VERSION ${PROJECT_VERSION}
COMPATIBILITY AnyNewerVersion
)
configure_package_config_file(
${EnTT_SOURCE_DIR}/cmake/in/EnTTConfig.cmake.in
EnTTConfig.cmake
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/EnTT/cmake
)
export(
EXPORT EnTTTargets
FILE ${CMAKE_CURRENT_BINARY_DIR}/EnTTTargets.cmake
NAMESPACE EnTT::
)
install(
EXPORT EnTTTargets
FILE EnTTTargets.cmake
DESTINATION ${CMAKE_INSTALL_LIBDIR}/EnTT/cmake
NAMESPACE EnTT::
)
install(
FILES
${PROJECT_BINARY_DIR}/EnTTConfig.cmake
${PROJECT_BINARY_DIR}/EnTTConfigVersion.cmake
DESTINATION ${CMAKE_INSTALL_LIBDIR}/EnTT/cmake
)
install(
DIRECTORY src/
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
FILES_MATCHING
PATTERN "*.h"
PATTERN "*.hpp"
)
export(PACKAGE EnTT)
# Tests
option(ENTT_BUILD_TESTING "Enable building tests." OFF)
if(ENTT_BUILD_TESTING)
option(ENTT_FIND_GTEST_PACKAGE "Enable finding gtest package." OFF)
option(ENTT_BUILD_BENCHMARK "Build benchmark." OFF)
option(ENTT_BUILD_EXAMPLE "Build examples." OFF)
option(ENTT_BUILD_LIB "Build lib tests." OFF)
option(ENTT_BUILD_SNAPSHOT "Build snapshot test with Cereal." OFF)
set(ENTT_ID_TYPE std::uint32_t CACHE STRING "Type of identifiers to use for the tests")
set(ENTT_CXX_STD cxx_std_17 CACHE STRING "C++ standard revision to use for the tests")
include(CTest)
enable_testing()
add_subdirectory(test)
endif()
# Tools
option(ENTT_BUILD_TOOLS "Enable building tools." OFF)
if(ENTT_BUILD_TOOLS)
add_subdirectory(tools)
endif()
# Documentation
option(ENTT_BUILD_DOCS "Enable building with documentation." OFF)
if(ENTT_BUILD_DOCS)
find_package(Doxygen 1.10)
if(DOXYGEN_FOUND)
add_subdirectory(docs)
endif()
endif()
-43
View File
@@ -1,43 +0,0 @@
# Contributing
First of all, thank you very much for taking the time to contribute to the
`EnTT` library.<br/>
How to do it mostly depends on the type of contribution:
* If you have a question, **please** ensure there isn't already an answer for
you by searching on GitHub under
[issues](https://github.com/skypjack/entt/issues). Do not forget to search
also through the closed ones. If you are unable to find a proper answer, feel
free to [open a new issue](https://github.com/skypjack/entt/issues/new).
Usually, questions are marked as such and closed in a few days.
* If you want to fix a typo in the inline documentation or in the README file,
if you want to add some new sections or if you want to help me with the
language by reviewing what I wrote so far (I'm not a native speaker after
all), **please** open a new
[pull request](https://github.com/skypjack/entt/pulls) with your changes.
* If you found a bug, **please** ensure there isn't already an answer for you by
searching on GitHub under [issues](https://github.com/skypjack/entt/issues).
If you are unable to find an open issue addressing the problem, feel free to
[open a new one](https://github.com/skypjack/entt/issues/new). **Please**, do
not forget to carefully describe how to reproduce the problem, then add all
the information about the system on which you are experiencing it and point
out the version of `EnTT` you are using (tag or commit).
* If you found a bug and you wrote a patch to fix it, open a new
[pull request](https://github.com/skypjack/entt/pulls) with your code.
**Please**, add some tests to avoid regressions in future if possible, it
would be really appreciated. Note that the `EnTT` library has a
[coverage at 100%](https://coveralls.io/github/skypjack/entt?branch=master)
(at least it was at 100% at the time I wrote this file) and this is the reason
for which you can be confident with using it in a production environment.
* If you want to propose a new feature and you know how to code it, **please**
do not issue directly a pull request. Before to do it,
[create a new issue](https://github.com/skypjack/entt/issues/new) to discuss
your proposal. Other users could be interested in your idea and the discussion
that will follow can refine it and therefore give us a better solution.
* If you want to request a new feature, I'm available for hiring. Take a look at
[my profile](https://github.com/skypjack) and feel free to write me.
-21
View File
@@ -1,21 +0,0 @@
The MIT License (MIT)
Copyright (c) 2017-2024 Michele Caini, author of EnTT
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copy of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copy or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
-4
View File
@@ -1,4 +0,0 @@
module(name = "entt")
bazel_dep(name = "rules_cc", version = "0.0.8")
bazel_dep(name = "bazel_skylib", version = "1.4.2")
-414
View File
@@ -1,414 +0,0 @@
![EnTT: Gaming meets modern C++](https://user-images.githubusercontent.com/1812216/103550016-90752280-4ea8-11eb-8667-12ed2219e137.png)
[![Build Status](https://github.com/skypjack/entt/workflows/build/badge.svg)](https://github.com/skypjack/entt/actions)
[![Coverage](https://codecov.io/gh/skypjack/entt/branch/master/graph/badge.svg)](https://codecov.io/gh/skypjack/entt)
[![Try online](https://img.shields.io/badge/try-online-brightgreen)](https://godbolt.org/z/zxW73f)
[![Documentation](https://img.shields.io/badge/docs-doxygen-blue)](https://skypjack.github.io/entt/)
[![Vcpkg port](https://img.shields.io/vcpkg/v/entt)](https://vcpkg.link/ports/entt)
[![Conan Center](https://img.shields.io/conan/v/entt)](https://conan.io/center/recipes/entt)
[![Gitter chat](https://badges.gitter.im/skypjack/entt.png)](https://gitter.im/skypjack/entt)
[![Discord channel](https://img.shields.io/discord/707607951396962417?logo=discord)](https://discord.gg/5BjPWBd)
> `EnTT` has been a dream so far, we haven't found a single bug to date and it's
> super easy to work with
>
> -- Every EnTT User Ever
`EnTT` is a header-only, tiny and easy to use library for game programming and
much more written in **modern C++**.<br/>
[Among others](https://github.com/skypjack/entt/wiki/EnTT-in-Action), it's used
in [**Minecraft**](https://minecraft.net/en-us/attribution/) by Mojang, the
[**ArcGIS Runtime SDKs**](https://developers.arcgis.com/arcgis-runtime/) by Esri
and the amazing [**Ragdoll**](https://ragdolldynamics.com/).<br/>
If you don't see your project in the list, please open an issue, submit a PR or
add the [\#entt](https://github.com/topics/entt) tag to your _topics_! :+1:
---
Do you want to **keep up with changes** or do you have a **question** that
doesn't require you to open an issue?<br/>
Join the [gitter channel](https://gitter.im/skypjack/entt) and the
[discord server](https://discord.gg/5BjPWBd), meet other users like you. The
more we are, the better for everyone.<br/>
Don't forget to check the
[FAQs](https://github.com/skypjack/entt/wiki/Frequently-Asked-Questions) and the
[wiki](https://github.com/skypjack/entt/wiki) too. Your answers may already be
there.
Do you want to support `EnTT`? Consider becoming a
[**sponsor**](https://github.com/users/skypjack/sponsorship) or making a
donation via [**PayPal**](https://www.paypal.me/skypjack).<br/>
Many thanks to [these people](https://skypjack.github.io/sponsorship/) and
**special** thanks to:
[![mojang](https://user-images.githubusercontent.com/1812216/106253145-67ca1980-6217-11eb-9c0b-d93561b37098.png)](https://mojang.com)
[![imgly](https://user-images.githubusercontent.com/1812216/106253726-271ed000-6218-11eb-98e0-c9c681925770.png)](https://img.ly/)
# Table of Contents
* [Introduction](#introduction)
* [Code Example](#code-example)
* [Motivation](#motivation)
* [Benchmark](#benchmark)
* [Integration](#integration)
* [Requirements](#requirements)
* [CMake](#cmake)
* [Natvis support](#natvis-support)
* [Packaging Tools](#packaging-tools)
* [pkg-config](#pkg-config)
* [Documentation](#documentation)
* [Tests](#tests)
* [EnTT in Action](#entt-in-action)
* [Contributors](#contributors)
* [License](#license)
# Introduction
The entity-component-system (also known as _ECS_) is an architectural pattern
used mostly in game development. For further details:
* [Entity Systems Wiki](http://entity-systems.wikidot.com/)
* [Evolve Your Hierarchy](http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/)
* [ECS on Wikipedia](https://en.wikipedia.org/wiki/Entity%E2%80%93component%E2%80%93system)
This project started off as a pure entity-component system. Over time the
codebase has grown as more and more classes and functionalities were added.<br/>
Here is a brief, yet incomplete list of what it offers today:
* Built-in **RTTI system** mostly similar to the standard one.
* A `constexpr` utility for human-readable **resource names**.
* Minimal **configuration system** built using the monostate pattern.
* Incredibly fast **entity-component system** with its own _pay for what you
use_ policy, unconstrained component types with optional pointer stability and
hooks for storage customization.
* Views and groups to iterate entities and components and allow different access
patterns, from **perfect SoA** to fully random.
* A lot of **facilities** built on top of the entity-component system to help
the users and avoid reinventing the wheel.
* General purpose **execution graph builder** for optimal scheduling.
* The smallest and most basic implementation of a **service locator** ever seen.
* A built-in, non-intrusive and macro-free runtime **reflection system**.
* **Static polymorphism** made simple and within everyone's reach.
* A few homemade containers, like a sparse set based **hash map**.
* A **cooperative scheduler** for processes of any type.
* All that is needed for **resource management** (cache, loaders, handles).
* Delegates, **signal handlers** and a tiny event dispatcher.
* A general purpose **event emitter** as a CRTP idiom based class template.
* And **much more**! Check out the
[**wiki**](https://github.com/skypjack/entt/wiki).
Consider this list a work in progress as well as the project. The whole API is
fully documented in-code for those who are brave enough to read it.<br/>
Please, do note that all tools are also DLL-friendly now and run smoothly across
boundaries.
One thing known to most is that `EnTT` is also used in **Minecraft**.<br/>
Given that the game is available literally everywhere, I can confidently say
that the library has been sufficiently tested on every platform that can come to
mind.
## Code Example
```cpp
#include <entt/entt.hpp>
struct position {
float x;
float y;
};
struct velocity {
float dx;
float dy;
};
void update(entt::registry &registry) {
auto view = registry.view<const position, velocity>();
// use a callback
view.each([](const auto &pos, auto &vel) { /* ... */ });
// use an extended callback
view.each([](const auto entity, const auto &pos, auto &vel) { /* ... */ });
// use a range-for
for(auto [entity, pos, vel]: view.each()) {
// ...
}
// use forward iterators and get only the components of interest
for(auto entity: view) {
auto &vel = view.get<velocity>(entity);
// ...
}
}
int main() {
entt::registry registry;
for(auto i = 0u; i < 10u; ++i) {
const auto entity = registry.create();
registry.emplace<position>(entity, i * 1.f, i * 1.f);
if(i % 2 == 0) { registry.emplace<velocity>(entity, i * .1f, i * .1f); }
}
update(registry);
}
```
## Motivation
I started developing `EnTT` for the _wrong_ reason: my goal was to design an
entity-component system to beat another well known open source library both in
terms of performance and possibly memory usage.<br/>
In the end, I did it, but it wasn't very satisfying. Actually it wasn't
satisfying at all. The fastest and nothing more, fairly little indeed. When I
realized it, I tried hard to keep intact the great performance of `EnTT` and to
add all the features I wanted to see in *my own library* at the same time.
Nowadays, `EnTT` is finally what I was looking for: still faster than its
_competitors_, lower memory usage in the average case, a really good API and an
amazing set of features. And even more, of course.
## Benchmark
For what it's worth, you'll **never** see me trying to make other projects look
bad or offer dubious comparisons just to make this library seem cooler.<br/>
I leave this activity to others, if they enjoy it (and it seems that some people
actually like it). I prefer to make better use of my time.
If you are interested, you can compile the `benchmark` test in release mode (to
enable compiler optimizations, otherwise it would make little sense) by setting
the `ENTT_BUILD_BENCHMARK` option of `CMake` to `ON`, then evaluate yourself
whether you're satisfied with the results or not.
There are also a lot of projects out there that use `EnTT` as a basis for
comparison (this should already tell you a lot). Many of these benchmarks are
completely wrong, many others are simply incomplete, good at omitting some
information and using the wrong function to compare a given feature. Certainly
there are also good ones but they age quickly if nobody updates them, especially
when the library they are dealing with is actively developed.<br/>
Out of all of them, [this](https://github.com/abeimler/ecs_benchmark) seems like
the most up-to-date project and also covers a certain number of libraries. I
can't say exactly whether `EnTT` is used correctly or not. However, even if used
poorly, it should still give the reader an idea of where it's going to operate.
# Integration
`EnTT` is a header-only library. This means that including the `entt.hpp` header
is enough to include the library as a whole and use it. For those who are
interested only in the entity-component system, consider to include the sole
`entity/registry.hpp` header instead.<br/>
It's a matter of adding the following line to the top of a file:
```cpp
#include <entt/entt.hpp>
```
Use the line below to include only the entity-component system instead:
```cpp
#include <entt/entity/registry.hpp>
```
Then pass the proper `-I` argument to the compiler to add the `src` directory to
the include paths.
## Requirements
To be able to use `EnTT`, users must provide a full-featured compiler that
supports at least C++17.<br/>
The requirements below are mandatory to compile the tests and to extract the
documentation:
* `CMake` version 3.7 or later.
* `Doxygen` version 1.8 or later.
Alternatively, [Bazel](https://bazel.build) is also supported as a build system
(credits to [zaucy](https://github.com/zaucy) who offered to maintain it).<br/>
In the documentation below I'll still refer to `CMake`, this being the official
build system of the library.
## CMake
To use `EnTT` from a `CMake` project, just link an existing target to the
`EnTT::EnTT` alias.<br/>
The library offers everything you need for locating (as in `find_package`),
embedding (as in `add_subdirectory`), fetching (as in `FetchContent`) or using
it in many of the ways that you can think of and that involve `CMake`.<br/>
Covering all possible cases would require a treatise and not a simple README
file, but I'm confident that anyone reading this section also knows what it's
about and can use `EnTT` from a `CMake` project without problems.
## Natvis support
When using `CMake`, just enable the option `ENTT_INCLUDE_NATVIS` and enjoy
it.<br/>
Otherwise, most of the tools are covered via Natvis and all files can be found
in the `natvis` directory, divided by module.<br/>
If you spot errors or have suggestions, any contribution is welcome!
## Packaging Tools
`EnTT` is available for some of the most known packaging tools. In particular:
* [`Conan`](https://github.com/conan-io/conan-center-index), the C/C++ Package
Manager for Developers.
* [`vcpkg`](https://github.com/Microsoft/vcpkg), Microsoft VC++ Packaging
Tool.<br/>
You can download and install `EnTT` in just a few simple steps:
```
$ git clone https://github.com/Microsoft/vcpkg.git
$ cd vcpkg
$ ./bootstrap-vcpkg.sh
$ ./vcpkg integrate install
$ vcpkg install entt
```
Or you can use the `experimental` feature to test the latest changes:
```
vcpkg install entt[experimental] --head
```
The `EnTT` port in `vcpkg` is kept up to date by Microsoft team members and
community contributors.<br/>
If the version is out of date, please
[create an issue or pull request](https://github.com/Microsoft/vcpkg) on the
`vcpkg` repository.
* [`Homebrew`](https://github.com/skypjack/homebrew-entt), the missing package
manager for macOS.<br/>
Available as a homebrew formula. Just type the following to install it:
```
brew install skypjack/entt/entt
```
* [`build2`](https://build2.org), build toolchain for developing and packaging C
and C++ code.<br/>
In order to use the [`entt`](https://cppget.org/entt) package in a `build2`
project, add the following line or a similar one to the `manifest` file:
```
depends: entt ^3.0.0
```
Also check that the configuration refers to a valid repository, so that the
package can be found by `build2`:
* [`cppget.org`](https://cppget.org), the open-source community central
repository, accessible as `https://pkg.cppget.org/1/stable`.
* [Package source repository](https://github.com/build2-packaging/entt):
accessible as either `https://github.com/build2-packaging/entt.git` or
`ssh://git@github.com/build2-packaging/entt.git`.
Feel free to [report issues](https://github.com/build2-packaging/entt) with
this package.
Both can be used with `bpkg add-repo` or added in a project
`repositories.manifest`. See the official
[documentation](https://build2.org/build2-toolchain/doc/build2-toolchain-intro.xhtml#guide-repositories)
for more details.
* [`bzlmod`](https://bazel.build/external/overview#bzlmod), Bazel's external
dependency management system.<br/>
To use the [`entt`](https://registry.bazel.build/modules/entt) module in a
`bazel` project, add the following to your `MODULE.bazel` file:
```starlark
bazel_dep(name = "entt", version = "3.12.2")
```
EnTT will now be available as `@entt` (short for `@entt//:entt`) to be used
in your `cc_*` rule `deps`.
Consider this list a work in progress and help me to make it longer if you like.
## pkg-config
`EnTT` also supports `pkg-config` (for some definition of _supports_ at least).
A suitable file called `entt.pc` is generated and installed in a proper
directory when running `CMake`.<br/>
This should also make it easier to use with tools such as `Meson` or similar.
# Documentation
The documentation is based on [doxygen](http://www.doxygen.nl/). To build it:
$ cd build
$ cmake .. -DENTT_BUILD_DOCS=ON
$ make
The API reference is created in HTML format in the `build/docs/html` directory.
To navigate it with your favorite browser:
$ cd build
$ your_favorite_browser docs/html/index.html
The same version is also available [online](https://skypjack.github.io/entt/)
for the latest release, that is the last stable tag.<br/>
Moreover, there exists a [wiki](https://github.com/skypjack/entt/wiki) dedicated
to the project where users can find all related documentation pages.
# Tests
To compile and run the tests, `EnTT` requires *googletest*.<br/>
`cmake` downloads and compiles the library before compiling anything else. In
order to build the tests, set the `CMake` option `ENTT_BUILD_TESTING` to `ON`.
To build the most basic set of tests:
* `$ cd build`
* `$ cmake -DENTT_BUILD_TESTING=ON ..`
* `$ make`
* `$ make test`
Note that benchmarks are not part of this set.
# EnTT in Action
`EnTT` is widely used in private and commercial applications. I cannot even
mention most of them because of some signatures I put on some documents time
ago. Fortunately, there are also people who took the time to implement open
source projects based on `EnTT` and did not hold back when it came to
documenting them.
[Here](https://github.com/skypjack/entt/wiki/EnTT-in-Action) you can find an
incomplete list of games, applications and articles that can be used as a
reference.
If you know of other resources out there that are about `EnTT`, feel free to
open an issue or a PR and I'll be glad to add them to the list.
# Contributors
Requests for features, PRs, suggestions and feedback are highly appreciated.
If you find you can help and want to contribute to the project with your
experience or you do want to get part of the project for some other reason, feel
free to contact me directly (you can find the mail in the
[profile](https://github.com/skypjack)).<br/>
I can't promise that each and every contribution will be accepted, but I can
assure that I'll do my best to take them all as soon as possible.
If you decide to participate, please see the guidelines for
[contributing](https://github.com/skypjack/entt/blob/master/CONTRIBUTING.md)
before to create issues or pull requests.<br/>
Take also a look at the
[contributors list](https://github.com/skypjack/entt/blob/master/AUTHORS) to
know who has participated so far.
# License
Code and documentation Copyright (c) 2017-2024 Michele Caini.<br/>
Colorful logo Copyright (c) 2018-2021 Richard Caseres.
Code released under
[the MIT license](https://github.com/skypjack/entt/blob/master/LICENSE).<br/>
Documentation released under
[CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).<br/>
All logos released under
[CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/).
-44
View File
@@ -1,44 +0,0 @@
EXAMPLES
* filter on runtime values/variables (not only types)
* support to polymorphic types (see #859)
DOC:
* custom storage/view
* update entity doc when the storage based model is in place
* in-place O(1) release/destroy for non-orphaned entities, out-of-sync model
* view: single vs multi type views are no longer a thing actually
* bump entities, reserved bits on identifiers
TODO:
* deprecate non-owning groups in favor of owning views and view packs, introduce lazy owning views
* bring nested groups back in place (see bd34e7f)
* work stealing job system (see #100) + mt scheduler based on const awareness for types
* view: reduce inst due to/improve perf with index-based approach in dispatch_get/pick_and_each/each (single type too, define storage ::at and ::at_as_tuple)
* view: update natvis as needed after the last rework, merge pools/filter in the same array, drop check (?) and turn view into a position
* view: type-only view_iterator (dyn get/excl sizes), type-only basic_common_view (dyn get/excl sizes with pointer to array from derived)
* combine version-mask-vs-version-bits tricks with reserved bits to allow things like enabling/disabling
* self contained entity traits to avoid explicit specializations (ie enum constants)
* auto type info data from types if present
* test: push sharing types further
* after non-continuous generation for entity storage:
- get/reset placeholder to position after saving/loading (avoid long lookup)
- allow skipping/reserving entity identifiers
- documentation for reserved entities
* storage entity: no emplace/insert, rename and add a fast range-push from above
* view: propagate tombstone check request to iterator
* table: pop back to support swap and pop, single column access, empty type optimization
* checkout tools workflow
* improve front (no multiple checks) and back (ie no contains) for multi-type view
* cleanup common view from tricks to handle single swap-only and in-place, if constexpr branches
* entity based component_traits
* review cmake warning about FetchContent_Populate (need .28 and EXCLUDE_FROM_ALL for FetchContent)
* after removing meta prop vectors, copy meta objects in their handles directly
* suppress -Wself-move on CI with g++13
* view and view iterator specializations for multi, single and filtered elements
* organizer support to groups
* meta range: move id to meta objects and return plain types (?), then remove id from meta base and meta ctor too
* refine the storage fallback mechanism for views (ie alloc?)
* sigh_mixin: automatic signal registration
* sigh_mixin: change cb signature from reg/entt to storage/entt (breaking for the good)
* don't pass reactive storage by default to callback
* runtime types support for meta for types that aren't backed by C++ types
-1
View File
@@ -1 +0,0 @@
# SEE MODULE.bazel
+406
View File
@@ -0,0 +1,406 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/graph/adjacency_matrix.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_cb9807796ea702d95f280c116c66a3f6.html">graph</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">adjacency_matrix.hpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_GRAPH_ADJACENCY_MATRIX_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_GRAPH_ADJACENCY_MATRIX_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;cstddef&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;iterator&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;type_traits&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;utility&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;../config/config.h&quot;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;../core/iterator.hpp&quot;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;fwd.hpp&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceentt.html">entt</a> {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="keyword">namespace </span>internal {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> It&gt;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">class </span>edge_iterator {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keyword">using </span>size_type = std::size_t;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keywordtype">void</span> find_next() noexcept {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordflow">for</span>(; pos != last &amp;&amp; !it[<span class="keyword">static_cast&lt;</span>typename It::difference_type<span class="keyword">&gt;</span>(pos)]; pos += offset) {}</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> }</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">using </span>value_type = std::pair&lt;size_type, size_type&gt;;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">using </span>pointer = input_iterator_pointer&lt;value_type&gt;;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">using </span>reference = value_type;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">using </span>difference_type = std::ptrdiff_t;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">using </span>iterator_category = std::input_iterator_tag;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">using </span>iterator_concept = std::forward_iterator_tag;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">constexpr</span> edge_iterator() noexcept = default;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="comment">// NOLINTNEXTLINE(bugprone-easily-swappable-parameters)</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> constexpr edge_iterator(It base, const size_type vertices, const size_type from, const size_type to, const size_type step) noexcept</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> : it{std::move(base)},</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> vert{vertices},</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> pos{from},</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> last{to},</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> offset{step} {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> find_next();</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> }</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">constexpr</span> edge_iterator &amp;operator++() noexcept {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> pos += offset;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> find_next();</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> }</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">constexpr</span> edge_iterator operator++(<span class="keywordtype">int</span>) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keyword">const</span> edge_iterator orig = *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">return</span> ++(*this), orig;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> }</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> [[nodiscard]] <span class="keyword">constexpr</span> reference operator*() const noexcept {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">return</span> *operator-&gt;();</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> }</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> [[nodiscard]] <span class="keyword">constexpr</span> pointer operator-&gt;() const noexcept {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">return</span> std::make_pair&lt;size_type&gt;(pos / vert, pos % vert);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keyword">friend</span> <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#af7c61951b721a1e3612cf536bd707501">operator==</a>(<span class="keyword">const</span> edge_iterator&lt;Type&gt; &amp;, <span class="keyword">const</span> edge_iterator&lt;Type&gt; &amp;) <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> It it{};</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> size_type vert{};</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> size_type pos{};</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> size_type last{};</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> size_type offset{};</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>};</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Container&gt;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#af7c61951b721a1e3612cf536bd707501">operator==</a>(<span class="keyword">const</span> edge_iterator&lt;Container&gt; &amp;lhs, <span class="keyword">const</span> edge_iterator&lt;Container&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">return</span> lhs.pos == rhs.pos;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span>}</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Container&gt;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#ad9accc71a383509ada028f7fa2b767bf">operator!=</a>(<span class="keyword">const</span> edge_iterator&lt;Container&gt; &amp;lhs, <span class="keyword">const</span> edge_iterator&lt;Container&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> !(lhs == rhs);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>} <span class="comment">// namespace internal</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Category, <span class="keyword">typename</span> Allocator&gt;</div>
<div class="foldopen" id="foldopen00096" data-start="{" data-end="};">
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html"> 96</a></span><span class="keyword">class </span><a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keyword">using </span>alloc_traits = std::allocator_traits&lt;Allocator&gt;;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keyword">static_assert</span>(std::is_base_of_v&lt;directed_tag, Category&gt;, <span class="stringliteral">&quot;Invalid graph category&quot;</span>);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keyword">static_assert</span>(std::is_same_v&lt;typename alloc_traits::value_type, std::size_t&gt;, <span class="stringliteral">&quot;Invalid value type&quot;</span>);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keyword">using </span>container_type = std::vector&lt;std::size_t, typename alloc_traits::template rebind_alloc&lt;std::size_t&gt;&gt;;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8"> 104</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> = Allocator;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c"> 106</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> = std::size_t;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9"> 108</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> = <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a>;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#aa2ac50f08d437489d4f761b418c48eda"> 110</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#aa2ac50f08d437489d4f761b418c48eda">edge_type</a> = std::pair&lt;vertex_type, vertex_type&gt;;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a2a5cd6977bd31867ed853b737f3a2ff1"> 112</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a2a5cd6977bd31867ed853b737f3a2ff1">vertex_iterator</a> = <a class="code hl_class" href="classentt_1_1iota__iterator.html">iota_iterator&lt;vertex_type&gt;</a>;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8"> 114</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8">edge_iterator</a> = internal::edge_iterator&lt;typename container_type::const_iterator&gt;;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a88b3a1f0df93f9785b51ece42cb71852"> 116</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a88b3a1f0df93f9785b51ece42cb71852">out_edge_iterator</a> = <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8">edge_iterator</a>;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#ad1eb3bad19846f57d9a6a44bed6f360d"> 118</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad1eb3bad19846f57d9a6a44bed6f360d">in_edge_iterator</a> = <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8">edge_iterator</a>;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a3beccfd9cecbffa10c80dc702ef95917"> 120</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a3beccfd9cecbffa10c80dc702ef95917">graph_category</a> = Category;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span></div>
<div class="foldopen" id="foldopen00123" data-start="{" data-end="}">
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365"> 123</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a>() noexcept(noexcept(<a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a>{}))</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> : <a class="code hl_class" href="classentt_1_1adjacency__matrix.html">adjacency_matrix</a>{0u} {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> }</div>
</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span></div>
<div class="foldopen" id="foldopen00131" data-start="{" data-end="}">
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#ae6940bc105cd3cd328a6abc3f19c14dc"> 131</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#ae6940bc105cd3cd328a6abc3f19c14dc">adjacency_matrix</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> &amp;allocator) noexcept</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> : <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a>{0u, allocator} {}</div>
</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span></div>
<div class="foldopen" id="foldopen00140" data-start="{" data-end="}">
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a854098472673c06c946df5efec991517"> 140</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a854098472673c06c946df5efec991517">adjacency_matrix</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> &amp;allocator = <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a>{})</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> : matrix{<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a> * <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>, allocator},</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> vert{<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>} {}</div>
</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a1b5b018fd516b2f3fbb5222ea47a2bbf"> 145</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a1b5b018fd516b2f3fbb5222ea47a2bbf">adjacency_matrix</a>(<span class="keyword">const</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span></div>
<div class="foldopen" id="foldopen00152" data-start="{" data-end="}">
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#adaa9b708b88f549673e7a9db7203b96c"> 152</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#adaa9b708b88f549673e7a9db7203b96c">adjacency_matrix</a>(<span class="keyword">const</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;other, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> &amp;allocator)</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> : matrix{other.matrix, allocator},</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> vert{other.vert} {}</div>
</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span></div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#adcbf612110d41734771cf1c5a6d999e3"> 157</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#adcbf612110d41734771cf1c5a6d999e3">adjacency_matrix</a>(<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;&amp;) noexcept = default;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span></div>
<div class="foldopen" id="foldopen00164" data-start="{" data-end="}">
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a7195a32e20c1099e6e32ef3e73475801"> 164</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a>(<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;&amp;other, const <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> &amp;allocator)</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> : matrix{std::move(other.matrix), allocator},</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> vert{other.vert} {}</div>
</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span></div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#aabdea98cbe302052e65e1a5328b49106"> 169</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aabdea98cbe302052e65e1a5328b49106">~adjacency_matrix</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span></div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#ab26e50bcbe59bf835f6a34a21a622095"> 175</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#ab26e50bcbe59bf835f6a34a21a622095">operator=</a>(<span class="keyword">const</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span></div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a760b57bbb50f8e98a9f6bf8c6c6a19c5"> 181</a></span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a760b57bbb50f8e98a9f6bf8c6c6a19c5">operator=</a>(<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;&amp;) noexcept = default;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span></div>
<div class="foldopen" id="foldopen00187" data-start="{" data-end="}">
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a5ee4c669461f74485c4263ece0c05f2f"> 187</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a5ee4c669461f74485c4263ece0c05f2f">swap</a>(<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> &amp;other) noexcept {</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="keyword">using </span>std::swap;</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a5ee4c669461f74485c4263ece0c05f2f">swap</a>(matrix, other.matrix);</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a5ee4c669461f74485c4263ece0c05f2f">swap</a>(vert, other.vert);</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> }</div>
</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span></div>
<div class="foldopen" id="foldopen00197" data-start="{" data-end="}">
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#aea59b70885fd22df3f80f59cf6e9e58b"> 197</a></span> [[nodiscard]] <span class="keyword">constexpr</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aea59b70885fd22df3f80f59cf6e9e58b">get_allocator</a>() const noexcept {</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">return</span> matrix.get_allocator();</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> }</div>
</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span></div>
<div class="foldopen" id="foldopen00202" data-start="{" data-end="}">
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a81931cd90488b3e5269217f7d6064c93"> 202</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a81931cd90488b3e5269217f7d6064c93">clear</a>() noexcept {</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> matrix.clear();</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> vert = {};</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> }</div>
</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span></div>
<div class="foldopen" id="foldopen00215" data-start="{" data-end="}">
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a4d262116700a6aeda88d3bd0d0f2e3c2"> 215</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a4d262116700a6aeda88d3bd0d0f2e3c2">empty</a>() const noexcept {</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> <span class="keyword">const</span> <span class="keyword">auto</span> iterable = <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#ab6638e821360bafa2d7ce2e12ef0825a">edges</a>();</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> <span class="keywordflow">return</span> (iterable.begin() == iterable.end());</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> }</div>
</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span></div>
<div class="foldopen" id="foldopen00224" data-start="{" data-end="}">
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a70f8706c96d4c000ceab51d88402ca74"> 224</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a70f8706c96d4c000ceab51d88402ca74">size</a>() const noexcept {</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">return</span> vert;</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> }</div>
</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span></div>
<div class="foldopen" id="foldopen00232" data-start="{" data-end="}">
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4"> 232</a></span> [[nodiscard]] <a class="code hl_struct" href="structentt_1_1iterable__adaptor.html">iterable_adaptor&lt;vertex_iterator&gt;</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>() const noexcept {</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">return</span> {0u, vert};</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> }</div>
</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span></div>
<div class="foldopen" id="foldopen00240" data-start="{" data-end="}">
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#ab6638e821360bafa2d7ce2e12ef0825a"> 240</a></span> [[nodiscard]] <a class="code hl_struct" href="structentt_1_1iterable__adaptor.html">iterable_adaptor&lt;edge_iterator&gt;</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#ab6638e821360bafa2d7ce2e12ef0825a">edges</a>() const noexcept {</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="keyword">const</span> <span class="keyword">auto</span> it = matrix.cbegin();</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keyword">const</span> <span class="keyword">auto</span> sz = matrix.size();</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <span class="keywordflow">return</span> {{it, vert, 0u, sz, 1u}, {it, vert, sz, sz, 1u}};</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> }</div>
</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span></div>
<div class="foldopen" id="foldopen00251" data-start="{" data-end="}">
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a4e28de523aa924aea9c8c78b5981a9df"> 251</a></span> [[nodiscard]] <a class="code hl_struct" href="structentt_1_1iterable__adaptor.html">iterable_adaptor&lt;out_edge_iterator&gt;</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a4e28de523aa924aea9c8c78b5981a9df">out_edges</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> vertex) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> <span class="keyword">const</span> <span class="keyword">auto</span> it = matrix.cbegin();</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <span class="keyword">const</span> <span class="keyword">auto</span> from = vertex * vert;</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> <span class="keyword">const</span> <span class="keyword">auto</span> to = from + vert;</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">return</span> {{it, vert, from, to, 1u}, {it, vert, to, to, 1u}};</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> }</div>
</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span></div>
<div class="foldopen" id="foldopen00263" data-start="{" data-end="}">
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a9213407b3d7b543348000a44357ccca1"> 263</a></span> [[nodiscard]] <a class="code hl_struct" href="structentt_1_1iterable__adaptor.html">iterable_adaptor&lt;in_edge_iterator&gt;</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a9213407b3d7b543348000a44357ccca1">in_edges</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> vertex) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <span class="keyword">const</span> <span class="keyword">auto</span> it = matrix.cbegin();</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> <span class="keyword">const</span> <span class="keyword">auto</span> from = vertex;</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <span class="keyword">const</span> <span class="keyword">auto</span> to = vert * vert + from;</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="keywordflow">return</span> {{it, vert, from, to, vert}, {it, vert, to, to, vert}};</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> }</div>
</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span></div>
<div class="foldopen" id="foldopen00274" data-start="{" data-end="}">
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#ad45c4c6b938ed028d7c99b1d1a678b9e"> 274</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#ad45c4c6b938ed028d7c99b1d1a678b9e">resize</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>) {</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a> other{<a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>, <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#aea59b70885fd22df3f80f59cf6e9e58b">get_allocator</a>()};</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> </div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> <span class="keywordflow">for</span>(<span class="keyword">auto</span> [lhs, rhs]: <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#ab6638e821360bafa2d7ce2e12ef0825a">edges</a>()) {</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> other.insert(lhs, rhs);</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> }</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> </div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> other.swap(*<span class="keyword">this</span>);</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> }</div>
</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span></div>
<div class="foldopen" id="foldopen00292" data-start="{" data-end="}">
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a16d422fbdac17535196b27001b4bfd63"> 292</a></span> std::pair&lt;edge_iterator, bool&gt; <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a16d422fbdac17535196b27001b4bfd63">insert</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> lhs, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> rhs) {</div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> <span class="keyword">const</span> <span class="keyword">auto</span> pos = lhs * vert + rhs;</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> </div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_same_v&lt;graph_category, undirected_tag&gt;) {</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <span class="keyword">const</span> <span class="keyword">auto</span> rev = rhs * vert + lhs;</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> ENTT_ASSERT(matrix[pos] == matrix[rev], <span class="stringliteral">&quot;Something went really wrong&quot;</span>);</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> matrix[rev] = 1u;</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> }</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> </div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> <span class="keyword">const</span> <span class="keyword">auto</span> inserted = !std::exchange(matrix[pos], 1u);</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">return</span> {<a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8">edge_iterator</a>{matrix.cbegin(), vert, pos, matrix.size(), 1u}, inserted};</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> }</div>
</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span></div>
<div class="foldopen" id="foldopen00311" data-start="{" data-end="}">
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#adf91bac04f07bf7ce0478ecd5baeece7"> 311</a></span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#adf91bac04f07bf7ce0478ecd5baeece7">erase</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> lhs, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> rhs) {</div>
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> <span class="keyword">const</span> <span class="keyword">auto</span> pos = lhs * vert + rhs;</div>
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> </div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_same_v&lt;graph_category, undirected_tag&gt;) {</div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> <span class="keyword">const</span> <span class="keyword">auto</span> rev = rhs * vert + lhs;</div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> ENTT_ASSERT(matrix[pos] == matrix[rev], <span class="stringliteral">&quot;Something went really wrong&quot;</span>);</div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> matrix[rev] = 0u;</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> }</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> </div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> <span class="keywordflow">return</span> std::exchange(matrix[pos], 0u);</div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> }</div>
</div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span></div>
<div class="foldopen" id="foldopen00329" data-start="{" data-end="}">
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"><a class="line" href="classentt_1_1adjacency__matrix.html#a783833a34672bcbd0afab063ab417a97"> 329</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1adjacency__matrix.html#a783833a34672bcbd0afab063ab417a97">contains</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> lhs, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> rhs)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> <span class="keyword">const</span> <span class="keyword">auto</span> pos = lhs * vert + rhs;</div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> <span class="keywordflow">return</span> pos &lt; matrix.size() &amp;&amp; matrix[pos];</div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> }</div>
</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> </div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span> container_type matrix;</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> <a class="code hl_typedef" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> vert;</div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span>};</div>
</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> </div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span>} <span class="comment">// namespace entt</span></div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> </div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix</a></div><div class="ttdoc">Basic implementation of a directed adjacency matrix.</div><div class="ttdef"><b>Definition</b> <a href="#l00096">adjacency_matrix.hpp:96</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a16d422fbdac17535196b27001b4bfd63"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a16d422fbdac17535196b27001b4bfd63">entt::adjacency_matrix::insert</a></div><div class="ttdeci">std::pair&lt; edge_iterator, bool &gt; insert(const vertex_type lhs, const vertex_type rhs)</div><div class="ttdoc">Inserts an edge into the adjacency matrix, if it does not exist.</div><div class="ttdef"><b>Definition</b> <a href="#l00292">adjacency_matrix.hpp:292</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a1b5b018fd516b2f3fbb5222ea47a2bbf"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a1b5b018fd516b2f3fbb5222ea47a2bbf">entt::adjacency_matrix::adjacency_matrix</a></div><div class="ttdeci">adjacency_matrix(const adjacency_matrix &amp;)=default</div><div class="ttdoc">Default copy constructor.</div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a2a5cd6977bd31867ed853b737f3a2ff1"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a2a5cd6977bd31867ed853b737f3a2ff1">entt::adjacency_matrix::vertex_iterator</a></div><div class="ttdeci">iota_iterator&lt; vertex_type &gt; vertex_iterator</div><div class="ttdoc">Vertex iterator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00112">adjacency_matrix.hpp:112</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a3b3d88826c5e9e6d6696c57cfeadc365"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">entt::adjacency_matrix::adjacency_matrix</a></div><div class="ttdeci">adjacency_matrix() noexcept(noexcept(allocator_type{}))</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00123">adjacency_matrix.hpp:123</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a3beccfd9cecbffa10c80dc702ef95917"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a3beccfd9cecbffa10c80dc702ef95917">entt::adjacency_matrix::graph_category</a></div><div class="ttdeci">Category graph_category</div><div class="ttdoc">Graph category tag.</div><div class="ttdef"><b>Definition</b> <a href="#l00120">adjacency_matrix.hpp:120</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a4d262116700a6aeda88d3bd0d0f2e3c2"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a4d262116700a6aeda88d3bd0d0f2e3c2">entt::adjacency_matrix::empty</a></div><div class="ttdeci">bool empty() const noexcept</div><div class="ttdoc">Returns true if an adjacency matrix is empty, false otherwise.</div><div class="ttdef"><b>Definition</b> <a href="#l00215">adjacency_matrix.hpp:215</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a4e28de523aa924aea9c8c78b5981a9df"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a4e28de523aa924aea9c8c78b5981a9df">entt::adjacency_matrix::out_edges</a></div><div class="ttdeci">iterable_adaptor&lt; out_edge_iterator &gt; out_edges(const vertex_type vertex) const noexcept</div><div class="ttdoc">Returns an iterable object to visit all out-edges of a vertex.</div><div class="ttdef"><b>Definition</b> <a href="#l00251">adjacency_matrix.hpp:251</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a4e2e74717c42df138ed98b1a33b6ffd8"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8">entt::adjacency_matrix::edge_iterator</a></div><div class="ttdeci">internal::edge_iterator&lt; typename container_type::const_iterator &gt; edge_iterator</div><div class="ttdoc">Edge iterator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00114">adjacency_matrix.hpp:114</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a5ee4c669461f74485c4263ece0c05f2f"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a5ee4c669461f74485c4263ece0c05f2f">entt::adjacency_matrix&lt; directed_tag, typename alloc_traits::template rebind_alloc&lt; std::size_t &gt; &gt;::swap</a></div><div class="ttdeci">void swap(adjacency_matrix &amp;other) noexcept</div><div class="ttdef"><b>Definition</b> <a href="#l00187">adjacency_matrix.hpp:187</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a70f8706c96d4c000ceab51d88402ca74"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a70f8706c96d4c000ceab51d88402ca74">entt::adjacency_matrix::size</a></div><div class="ttdeci">size_type size() const noexcept</div><div class="ttdoc">Returns the number of vertices.</div><div class="ttdef"><b>Definition</b> <a href="#l00224">adjacency_matrix.hpp:224</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a72507bd210570d5712a5c40b0d345b6c"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">entt::adjacency_matrix::size_type</a></div><div class="ttdeci">std::size_t size_type</div><div class="ttdoc">Unsigned integer type.</div><div class="ttdef"><b>Definition</b> <a href="#l00106">adjacency_matrix.hpp:106</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a740021db9b7bad492ebe3d074769d8b8"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">entt::adjacency_matrix::allocator_type</a></div><div class="ttdeci">Allocator allocator_type</div><div class="ttdoc">Allocator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00104">adjacency_matrix.hpp:104</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a760b57bbb50f8e98a9f6bf8c6c6a19c5"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a760b57bbb50f8e98a9f6bf8c6c6a19c5">entt::adjacency_matrix::operator=</a></div><div class="ttdeci">adjacency_matrix &amp; operator=(adjacency_matrix &amp;&amp;) noexcept=default</div><div class="ttdoc">Default move assignment operator.</div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a783833a34672bcbd0afab063ab417a97"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a783833a34672bcbd0afab063ab417a97">entt::adjacency_matrix::contains</a></div><div class="ttdeci">bool contains(const vertex_type lhs, const vertex_type rhs) const</div><div class="ttdoc">Checks if an adjacency matrix contains a given edge.</div><div class="ttdef"><b>Definition</b> <a href="#l00329">adjacency_matrix.hpp:329</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a81931cd90488b3e5269217f7d6064c93"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a81931cd90488b3e5269217f7d6064c93">entt::adjacency_matrix::clear</a></div><div class="ttdeci">void clear() noexcept</div><div class="ttdoc">Clears the adjacency matrix.</div><div class="ttdef"><b>Definition</b> <a href="#l00202">adjacency_matrix.hpp:202</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a854098472673c06c946df5efec991517"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a854098472673c06c946df5efec991517">entt::adjacency_matrix::adjacency_matrix</a></div><div class="ttdeci">adjacency_matrix(const size_type vertices, const allocator_type &amp;allocator=allocator_type{})</div><div class="ttdoc">Constructs an empty container with a given allocator and user supplied number of vertices.</div><div class="ttdef"><b>Definition</b> <a href="#l00140">adjacency_matrix.hpp:140</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a88b3a1f0df93f9785b51ece42cb71852"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a88b3a1f0df93f9785b51ece42cb71852">entt::adjacency_matrix::out_edge_iterator</a></div><div class="ttdeci">edge_iterator out_edge_iterator</div><div class="ttdoc">Out-edge iterator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00116">adjacency_matrix.hpp:116</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_a9213407b3d7b543348000a44357ccca1"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#a9213407b3d7b543348000a44357ccca1">entt::adjacency_matrix::in_edges</a></div><div class="ttdeci">iterable_adaptor&lt; in_edge_iterator &gt; in_edges(const vertex_type vertex) const noexcept</div><div class="ttdoc">Returns an iterable object to visit all in-edges of a vertex.</div><div class="ttdef"><b>Definition</b> <a href="#l00263">adjacency_matrix.hpp:263</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_aa2ac50f08d437489d4f761b418c48eda"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#aa2ac50f08d437489d4f761b418c48eda">entt::adjacency_matrix::edge_type</a></div><div class="ttdeci">std::pair&lt; vertex_type, vertex_type &gt; edge_type</div><div class="ttdoc">Edge type.</div><div class="ttdef"><b>Definition</b> <a href="#l00110">adjacency_matrix.hpp:110</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_aabdea98cbe302052e65e1a5328b49106"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#aabdea98cbe302052e65e1a5328b49106">entt::adjacency_matrix::~adjacency_matrix</a></div><div class="ttdeci">~adjacency_matrix()=default</div><div class="ttdoc">Default destructor.</div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_aac3dbc29bb2a31de879b62742124ddd4"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">entt::adjacency_matrix&lt; directed_tag, typename alloc_traits::template rebind_alloc&lt; std::size_t &gt; &gt;::vertices</a></div><div class="ttdeci">iterable_adaptor&lt; vertex_iterator &gt; vertices() const noexcept</div><div class="ttdef"><b>Definition</b> <a href="#l00232">adjacency_matrix.hpp:232</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_ab26e50bcbe59bf835f6a34a21a622095"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#ab26e50bcbe59bf835f6a34a21a622095">entt::adjacency_matrix::operator=</a></div><div class="ttdeci">adjacency_matrix &amp; operator=(const adjacency_matrix &amp;)=default</div><div class="ttdoc">Default copy assignment operator.</div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_ab6638e821360bafa2d7ce2e12ef0825a"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#ab6638e821360bafa2d7ce2e12ef0825a">entt::adjacency_matrix::edges</a></div><div class="ttdeci">iterable_adaptor&lt; edge_iterator &gt; edges() const noexcept</div><div class="ttdoc">Returns an iterable object to visit all edges of a matrix.</div><div class="ttdef"><b>Definition</b> <a href="#l00240">adjacency_matrix.hpp:240</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_ad1eb3bad19846f57d9a6a44bed6f360d"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#ad1eb3bad19846f57d9a6a44bed6f360d">entt::adjacency_matrix::in_edge_iterator</a></div><div class="ttdeci">edge_iterator in_edge_iterator</div><div class="ttdoc">In-edge iterator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00118">adjacency_matrix.hpp:118</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_ad45c4c6b938ed028d7c99b1d1a678b9e"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#ad45c4c6b938ed028d7c99b1d1a678b9e">entt::adjacency_matrix::resize</a></div><div class="ttdeci">void resize(const size_type vertices)</div><div class="ttdoc">Resizes an adjacency matrix.</div><div class="ttdef"><b>Definition</b> <a href="#l00274">adjacency_matrix.hpp:274</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_ad59306803ff05b7d2d3244f7e59ef9d9"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">entt::adjacency_matrix::vertex_type</a></div><div class="ttdeci">size_type vertex_type</div><div class="ttdoc">Vertex type.</div><div class="ttdef"><b>Definition</b> <a href="#l00108">adjacency_matrix.hpp:108</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_adaa9b708b88f549673e7a9db7203b96c"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#adaa9b708b88f549673e7a9db7203b96c">entt::adjacency_matrix::adjacency_matrix</a></div><div class="ttdeci">adjacency_matrix(const adjacency_matrix &amp;other, const allocator_type &amp;allocator)</div><div class="ttdoc">Allocator-extended copy constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00152">adjacency_matrix.hpp:152</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_adcbf612110d41734771cf1c5a6d999e3"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#adcbf612110d41734771cf1c5a6d999e3">entt::adjacency_matrix::adjacency_matrix</a></div><div class="ttdeci">adjacency_matrix(adjacency_matrix &amp;&amp;) noexcept=default</div><div class="ttdoc">Default move constructor.</div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_adf91bac04f07bf7ce0478ecd5baeece7"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#adf91bac04f07bf7ce0478ecd5baeece7">entt::adjacency_matrix::erase</a></div><div class="ttdeci">size_type erase(const vertex_type lhs, const vertex_type rhs)</div><div class="ttdoc">Removes the edge associated with a pair of given vertices.</div><div class="ttdef"><b>Definition</b> <a href="#l00311">adjacency_matrix.hpp:311</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_ae6940bc105cd3cd328a6abc3f19c14dc"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#ae6940bc105cd3cd328a6abc3f19c14dc">entt::adjacency_matrix::adjacency_matrix</a></div><div class="ttdeci">adjacency_matrix(const allocator_type &amp;allocator) noexcept</div><div class="ttdoc">Constructs an empty container with a given allocator.</div><div class="ttdef"><b>Definition</b> <a href="#l00131">adjacency_matrix.hpp:131</a></div></div>
<div class="ttc" id="aclassentt_1_1adjacency__matrix_html_aea59b70885fd22df3f80f59cf6e9e58b"><div class="ttname"><a href="classentt_1_1adjacency__matrix.html#aea59b70885fd22df3f80f59cf6e9e58b">entt::adjacency_matrix::get_allocator</a></div><div class="ttdeci">constexpr allocator_type get_allocator() const noexcept</div><div class="ttdoc">Returns the associated allocator.</div><div class="ttdef"><b>Definition</b> <a href="#l00197">adjacency_matrix.hpp:197</a></div></div>
<div class="ttc" id="aclassentt_1_1iota__iterator_html"><div class="ttname"><a href="classentt_1_1iota__iterator.html">entt::iota_iterator</a></div><div class="ttdoc">Plain iota iterator (waiting for C++20).</div><div class="ttdef"><b>Definition</b> <a href="iterator_8hpp_source.html#l00056">iterator.hpp:56</a></div></div>
<div class="ttc" id="anamespaceentt_html"><div class="ttname"><a href="namespaceentt.html">entt</a></div><div class="ttdoc">EnTT default namespace.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00022">dense_map.hpp:22</a></div></div>
<div class="ttc" id="anamespaceentt_html_ad9accc71a383509ada028f7fa2b767bf"><div class="ttname"><a href="namespaceentt.html#ad9accc71a383509ada028f7fa2b767bf">entt::operator!=</a></div><div class="ttdeci">constexpr bool operator!=(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00232">hashed_string.hpp:232</a></div></div>
<div class="ttc" id="anamespaceentt_html_af7c61951b721a1e3612cf536bd707501"><div class="ttname"><a href="namespaceentt.html#af7c61951b721a1e3612cf536bd707501">entt::operator==</a></div><div class="ttdeci">constexpr bool operator==(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00220">hashed_string.hpp:220</a></div></div>
<div class="ttc" id="astructentt_1_1iterable__adaptor_html"><div class="ttname"><a href="structentt_1_1iterable__adaptor.html">entt::iterable_adaptor</a></div><div class="ttdoc">Utility class to create an iterable object from a pair of iterators.</div><div class="ttdef"><b>Definition</b> <a href="iterator_8hpp_source.html#l00141">iterator.hpp:141</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+131
View File
@@ -0,0 +1,131 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/meta/adl_pointer.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_c5715f7ee899854a669b87bbaa642de0.html">meta</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">adl_pointer.hpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_META_ADL_POINTER_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_META_ADL_POINTER_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceentt.html">entt</a> {</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00013" data-start="{" data-end="}">
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="namespaceentt.html#a2ab7b51802157a98106f238335fa7503"> 13</a></span><span class="keyword">decltype</span>(<span class="keyword">auto</span>) <a class="code hl_function" href="namespaceentt.html#a2ab7b51802157a98106f238335fa7503">dereference_meta_pointer_like</a>(<span class="keyword">const</span> Type &amp;value) {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordflow">return</span> *value;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span>}</div>
</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00022" data-start="{" data-end="};">
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="structentt_1_1adl__meta__pointer__like.html"> 22</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structentt_1_1adl__meta__pointer__like.html">adl_meta_pointer_like</a> {</div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="}">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="structentt_1_1adl__meta__pointer__like.html#afa27f416e32b351d85ab1a061c4597bd"> 28</a></span> <span class="keyword">static</span> <span class="keyword">decltype</span>(<span class="keyword">auto</span>) <a class="code hl_function" href="structentt_1_1adl__meta__pointer__like.html#afa27f416e32b351d85ab1a061c4597bd">dereference</a>(<span class="keyword">const</span> Type &amp;value) {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceentt.html#a2ab7b51802157a98106f238335fa7503">dereference_meta_pointer_like</a>(value);</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> }</div>
</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>};</div>
</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>} <span class="comment">// namespace entt</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="anamespaceentt_html"><div class="ttname"><a href="namespaceentt.html">entt</a></div><div class="ttdoc">EnTT default namespace.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00022">dense_map.hpp:22</a></div></div>
<div class="ttc" id="anamespaceentt_html_a2ab7b51802157a98106f238335fa7503"><div class="ttname"><a href="namespaceentt.html#a2ab7b51802157a98106f238335fa7503">entt::dereference_meta_pointer_like</a></div><div class="ttdeci">decltype(auto) dereference_meta_pointer_like(const Type &amp;value)</div><div class="ttdoc">ADL based lookup function for dereferencing meta pointer-like types.</div><div class="ttdef"><b>Definition</b> <a href="#l00013">adl_pointer.hpp:13</a></div></div>
<div class="ttc" id="astructentt_1_1adl__meta__pointer__like_html"><div class="ttname"><a href="structentt_1_1adl__meta__pointer__like.html">entt::adl_meta_pointer_like</a></div><div class="ttdoc">Fake ADL based lookup function for meta pointer-like types.</div><div class="ttdef"><b>Definition</b> <a href="#l00022">adl_pointer.hpp:22</a></div></div>
<div class="ttc" id="astructentt_1_1adl__meta__pointer__like_html_afa27f416e32b351d85ab1a061c4597bd"><div class="ttname"><a href="structentt_1_1adl__meta__pointer__like.html#afa27f416e32b351d85ab1a061c4597bd">entt::adl_meta_pointer_like::dereference</a></div><div class="ttdeci">static decltype(auto) dereference(const Type &amp;value)</div><div class="ttdoc">Uses the default ADL based lookup method to resolve the call.</div><div class="ttdef"><b>Definition</b> <a href="#l00028">adl_pointer.hpp:28</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+212
View File
@@ -0,0 +1,212 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/core/algorithm.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_de8f4e6ba3f54a2a21309f742e93a373.html">core</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">algorithm.hpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_CORE_ALGORITHM_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_CORE_ALGORITHM_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;functional&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;iterator&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;utility&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;utility.hpp&quot;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceentt.html">entt</a> {</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span></div>
<div class="foldopen" id="foldopen00021" data-start="{" data-end="};">
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="structentt_1_1std__sort.html"> 21</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structentt_1_1std__sort.html">std_sort</a> {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> It, <span class="keyword">typename</span> Compare = std::less&lt;&gt;, <span class="keyword">typename</span>... Args&gt;</div>
<div class="foldopen" id="foldopen00036" data-start="{" data-end="}">
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"><a class="line" href="structentt_1_1std__sort.html#a8895e4acd1677a60e07d7e28748fe667"> 36</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="structentt_1_1std__sort.html#a8895e4acd1677a60e07d7e28748fe667">operator()</a>(It first, It last, Compare compare = Compare{}, Args &amp;&amp;...args) <span class="keyword">const</span> {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> std::sort(std::forward&lt;Args&gt;(args)..., std::move(first), std::move(last), std::move(compare));</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> }</div>
</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span>};</div>
</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span></div>
<div class="foldopen" id="foldopen00042" data-start="{" data-end="};">
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="structentt_1_1insertion__sort.html"> 42</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structentt_1_1insertion__sort.html">insertion_sort</a> {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> It, <span class="keyword">typename</span> Compare = std::less&lt;&gt;&gt;</div>
<div class="foldopen" id="foldopen00055" data-start="{" data-end="}">
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="structentt_1_1insertion__sort.html#a73a5644fe5b683f9b9376c89ac47f2b8"> 55</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="structentt_1_1insertion__sort.html#a73a5644fe5b683f9b9376c89ac47f2b8">operator()</a>(It first, It last, Compare compare = Compare{}) <span class="keyword">const</span> {</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span>(first &lt; last) {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = first + 1; it &lt; last; ++it) {</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">auto</span> value = std::move(*it);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keyword">auto</span> pre = it;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="comment">// NOLINTBEGIN(cppcoreguidelines-pro-bounds-pointer-arithmetic)</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">for</span>(; pre &gt; first &amp;&amp; compare(value, *(pre - 1)); --pre) {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> *pre = std::move(*(pre - 1));</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="comment">// NOLINTEND(cppcoreguidelines-pro-bounds-pointer-arithmetic)</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> *pre = std::move(value);</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> }</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> }</div>
</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span>};</div>
</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span><span class="keyword">template</span>&lt;std::<span class="keywordtype">size_t</span> Bit, std::<span class="keywordtype">size_t</span> N&gt;</div>
<div class="foldopen" id="foldopen00079" data-start="{" data-end="};">
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="structentt_1_1radix__sort.html"> 79</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structentt_1_1radix__sort.html">radix_sort</a> {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keyword">static_assert</span>((N % Bit) == 0, <span class="stringliteral">&quot;The maximum number of bits to sort must be a multiple of the number of bits processed per pass&quot;</span>);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> It, <span class="keyword">typename</span> Getter = <span class="keywordtype">id</span>entity&gt;</div>
<div class="foldopen" id="foldopen00098" data-start="{" data-end="}">
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="structentt_1_1radix__sort.html#a1989f6fbe18d3d82fdea9745d6b9ee96"> 98</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="structentt_1_1radix__sort.html#a1989f6fbe18d3d82fdea9745d6b9ee96">operator()</a>(It first, It last, Getter getter = Getter{}) <span class="keyword">const</span> {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">if</span>(first &lt; last) {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keyword">constexpr</span> <span class="keyword">auto</span> passes = N / Bit;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keyword">using </span>value_type = <span class="keyword">typename</span> std::iterator_traits&lt;It&gt;::value_type;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keyword">using </span>difference_type = <span class="keyword">typename</span> std::iterator_traits&lt;It&gt;::difference_type;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> std::vector&lt;value_type&gt; aux(<span class="keyword">static_cast&lt;</span>std::size_t<span class="keyword">&gt;</span>(std::distance(first, last)));</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keyword">auto</span> part = [getter = std::move(getter)](<span class="keyword">auto</span> from, <span class="keyword">auto</span> to, <span class="keyword">auto</span> out, <span class="keyword">auto</span> start) {</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keyword">constexpr</span> <span class="keyword">auto</span> mask = (1 &lt;&lt; Bit) - 1;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keyword">constexpr</span> <span class="keyword">auto</span> buckets = 1 &lt;&lt; Bit;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="comment">// NOLINTNEXTLINE(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays, misc-const-correctness)</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> std::size_t count[buckets]{};</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = from; it != to; ++it) {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> ++count[(getter(*it) &gt;&gt; start) &amp; mask];</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> }</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="comment">// NOLINTNEXTLINE(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> std::size_t index[buckets]{};</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">for</span>(std::size_t pos{}, end = buckets - 1u; pos &lt; end; ++pos) {</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> index[pos + 1u] = index[pos] + count[pos];</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> }</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> </div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = from; it != to; ++it) {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keyword">const</span> <span class="keyword">auto</span> pos = index[(getter(*it) &gt;&gt; start) &amp; mask]++;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> out[<span class="keyword">static_cast&lt;</span>difference_type<span class="keyword">&gt;</span>(pos)] = std::move(*it);</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> }</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> };</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">for</span>(std::size_t pass = 0; pass &lt; (passes &amp; ~1u); pass += 2) {</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> part(first, last, aux.begin(), pass * Bit);</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> part(aux.begin(), aux.end(), first, (pass + 1) * Bit);</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> }</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(passes &amp; 1) {</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> part(first, last, aux.begin(), (passes - 1) * Bit);</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> std::move(aux.begin(), aux.end(), first);</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> }</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> }</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> }</div>
</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span>};</div>
</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span>} <span class="comment">// namespace entt</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="anamespaceentt_html"><div class="ttname"><a href="namespaceentt.html">entt</a></div><div class="ttdoc">EnTT default namespace.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00022">dense_map.hpp:22</a></div></div>
<div class="ttc" id="astructentt_1_1insertion__sort_html"><div class="ttname"><a href="structentt_1_1insertion__sort.html">entt::insertion_sort</a></div><div class="ttdoc">Function object for performing insertion sort.</div><div class="ttdef"><b>Definition</b> <a href="#l00042">algorithm.hpp:42</a></div></div>
<div class="ttc" id="astructentt_1_1insertion__sort_html_a73a5644fe5b683f9b9376c89ac47f2b8"><div class="ttname"><a href="structentt_1_1insertion__sort.html#a73a5644fe5b683f9b9376c89ac47f2b8">entt::insertion_sort::operator()</a></div><div class="ttdeci">void operator()(It first, It last, Compare compare=Compare{}) const</div><div class="ttdoc">Sorts the elements in a range.</div><div class="ttdef"><b>Definition</b> <a href="#l00055">algorithm.hpp:55</a></div></div>
<div class="ttc" id="astructentt_1_1radix__sort_html"><div class="ttname"><a href="structentt_1_1radix__sort.html">entt::radix_sort</a></div><div class="ttdoc">Function object for performing LSD radix sort.</div><div class="ttdef"><b>Definition</b> <a href="#l00079">algorithm.hpp:79</a></div></div>
<div class="ttc" id="astructentt_1_1radix__sort_html_a1989f6fbe18d3d82fdea9745d6b9ee96"><div class="ttname"><a href="structentt_1_1radix__sort.html#a1989f6fbe18d3d82fdea9745d6b9ee96">entt::radix_sort::operator()</a></div><div class="ttdeci">void operator()(It first, It last, Getter getter=Getter{}) const</div><div class="ttdoc">Sorts the elements in a range.</div><div class="ttdef"><b>Definition</b> <a href="#l00098">algorithm.hpp:98</a></div></div>
<div class="ttc" id="astructentt_1_1std__sort_html"><div class="ttname"><a href="structentt_1_1std__sort.html">entt::std_sort</a></div><div class="ttdoc">Function object to wrap std::sort in a class type.</div><div class="ttdef"><b>Definition</b> <a href="#l00021">algorithm.hpp:21</a></div></div>
<div class="ttc" id="astructentt_1_1std__sort_html_a8895e4acd1677a60e07d7e28748fe667"><div class="ttname"><a href="structentt_1_1std__sort.html#a8895e4acd1677a60e07d7e28748fe667">entt::std_sort::operator()</a></div><div class="ttdeci">void operator()(It first, It last, Compare compare=Compare{}, Args &amp;&amp;...args) const</div><div class="ttdoc">Sorts the elements in a range.</div><div class="ttdef"><b>Definition</b> <a href="#l00036">algorithm.hpp:36</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+312
View File
@@ -0,0 +1,312 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="doc-content">
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">Class List</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span><span onclick="javascript:dynsection.toggleLevel(3);">3</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">&#9658;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceentt.html" target="_self">entt</a></td><td class="desc"><code>EnTT</code> default namespace </td></tr>
<tr id="row_0_0_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1adjacency__matrix.html" target="_self">adjacency_matrix</a></td><td class="desc">Basic implementation of a directed adjacency matrix </td></tr>
<tr id="row_0_1_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1adl__meta__pointer__like.html" target="_self">adl_meta_pointer_like</a></td><td class="desc">Fake ADL based lookup function for meta pointer-like types </td></tr>
<tr id="row_0_2_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1allocation__deleter.html" target="_self">allocation_deleter</a></td><td class="desc">Deleter for allocator-aware unique pointers (waiting for C++20) </td></tr>
<tr id="row_0_3_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1as__cref__t.html" target="_self">as_cref_t</a></td><td class="desc">Empty class type used to request the <em>as cref</em> policy </td></tr>
<tr id="row_0_4_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1as__group.html" target="_self">as_group</a></td><td class="desc">Converts a registry to a group </td></tr>
<tr id="row_0_5_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1as__is__t.html" target="_self">as_is_t</a></td><td class="desc">Empty class type used to request the <em>as-is</em> policy </td></tr>
<tr id="row_0_6_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1as__ref__t.html" target="_self">as_ref_t</a></td><td class="desc">Empty class type used to request the <em>as ref</em> policy </td></tr>
<tr id="row_0_7_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1as__view.html" target="_self">as_view</a></td><td class="desc">Converts a registry to a view </td></tr>
<tr id="row_0_8_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1as__void__t.html" target="_self">as_void_t</a></td><td class="desc">Empty class type used to request the <em>as void</em> policy </td></tr>
<tr id="row_0_9_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__any.html" target="_self">basic_any</a></td><td class="desc">A SBO friendly, type-safe container for single values of any type </td></tr>
<tr id="row_0_10_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__common__view.html" target="_self">basic_common_view</a></td><td class="desc">Basic storage view implementation </td></tr>
<tr id="row_0_11_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__continuous__loader.html" target="_self">basic_continuous_loader</a></td><td class="desc">Utility class for <em>continuous loading</em> </td></tr>
<tr id="row_0_12_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__dispatcher.html" target="_self">basic_dispatcher</a></td><td class="desc">Basic dispatcher implementation </td></tr>
<tr id="row_0_13_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__entt__traits.html" target="_self">basic_entt_traits</a></td><td class="desc">Common basic entity traits implementation </td></tr>
<tr id="row_0_14_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__flow.html" target="_self">basic_flow</a></td><td class="desc">Utility class for creating task graphs </td></tr>
<tr id="row_0_15_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__group.html" target="_self">basic_group</a></td><td class="desc">Group </td></tr>
<tr id="row_0_16_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html" target="_self">basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="desc">Owning group </td></tr>
<tr id="row_0_17_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html" target="_self">basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="desc">Non-owning group </td></tr>
<tr id="row_0_18_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__handle.html" target="_self">basic_handle</a></td><td class="desc">Non-owning handle to an entity </td></tr>
<tr id="row_0_19_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__hashed__string.html" target="_self">basic_hashed_string</a></td><td class="desc">Zero overhead unique identifier </td></tr>
<tr id="row_0_20_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1basic__meta__associative__container__traits.html" target="_self">basic_meta_associative_container_traits</a></td><td class="desc">General purpose implementation of meta associative container traits </td></tr>
<tr id="row_0_21_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1basic__meta__sequence__container__traits.html" target="_self">basic_meta_sequence_container_traits</a></td><td class="desc">General purpose implementation of meta sequence container traits </td></tr>
<tr id="row_0_22_" class="odd" style="display:none;"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_22_" class="arrow" onclick="dynsection.toggleFolder('0_22_')">&#9658;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__organizer.html" target="_self">basic_organizer</a></td><td class="desc">Utility class for creating a static task graph </td></tr>
<tr id="row_0_22_0_" class="odd" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1basic__organizer_1_1vertex.html" target="_self">vertex</a></td><td class="desc">Vertex type of a task graph defined as an adjacency list </td></tr>
<tr id="row_0_23_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__poly.html" target="_self">basic_poly</a></td><td class="desc">Static polymorphism made simple and within everyone's reach </td></tr>
<tr id="row_0_24_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__reactive__mixin.html" target="_self">basic_reactive_mixin</a></td><td class="desc">Mixin type used to add <em>reactive</em> support to storage types </td></tr>
<tr id="row_0_25_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__registry.html" target="_self">basic_registry</a></td><td class="desc">Fast and reliable entity-component system </td></tr>
<tr id="row_0_26_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__runtime__view.html" target="_self">basic_runtime_view</a></td><td class="desc">Generic runtime view </td></tr>
<tr id="row_0_27_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__scheduler.html" target="_self">basic_scheduler</a></td><td class="desc">Cooperative scheduler for processes </td></tr>
<tr id="row_0_28_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__sigh__mixin.html" target="_self">basic_sigh_mixin</a></td><td class="desc">Mixin type used to add signal support to storage types </td></tr>
<tr id="row_0_29_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__snapshot.html" target="_self">basic_snapshot</a></td><td class="desc">Utility class to create snapshots from a registry </td></tr>
<tr id="row_0_30_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__snapshot__loader.html" target="_self">basic_snapshot_loader</a></td><td class="desc">Utility class to restore a snapshot as a whole </td></tr>
<tr id="row_0_31_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__sparse__set.html" target="_self">basic_sparse_set</a></td><td class="desc">Sparse set implementation </td></tr>
<tr id="row_0_32_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__storage.html" target="_self">basic_storage</a></td><td class="desc">Storage implementation </td></tr>
<tr id="row_0_33_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__storage_3_01Entity_00_01Entity_00_01Allocator_01_4.html" target="_self">basic_storage&lt; Entity, Entity, Allocator &gt;</a></td><td class="desc">Swap-only entity storage specialization </td></tr>
<tr id="row_0_34_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__storage_3_01Type_00_01Entity_00_01Allocator_00_01std_1_1enable__if__t_3_01codc425495d57bad12d99123a94a344005.html" target="_self">basic_storage&lt; Type, Entity, Allocator, std::enable_if_t&lt; component_traits&lt; Type, Entity &gt;::page_size==0u &gt; &gt;</a></td><td class="desc">Default constructor. </td></tr>
<tr id="row_0_35_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__storage__view.html" target="_self">basic_storage_view</a></td><td class="desc">Basic storage view implementation </td></tr>
<tr id="row_0_36_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__table.html" target="_self">basic_table</a></td><td class="desc">Basic table implementation </td></tr>
<tr id="row_0_37_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__view.html" target="_self">basic_view</a></td><td class="desc">View implementation </td></tr>
<tr id="row_0_38_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__view_3_01get__t_3_01Get_01_4_00_01exclude__t_3_4_01_4.html" target="_self">basic_view&lt; get_t&lt; Get &gt;, exclude_t&lt;&gt; &gt;</a></td><td class="desc">Storage view specialization </td></tr>
<tr id="row_0_39_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1basic__view_3_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_00bfe15740605f6adb254763e866b0aef8.html" target="_self">basic_view&lt; get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt;, std::enable_if_t&lt;(sizeof...(Get) !=0u)&gt; &gt;</a></td><td class="desc">General purpose view </td></tr>
<tr id="row_0_40_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1choice__t.html" target="_self">choice_t</a></td><td class="desc">Utility class to disambiguate overloaded functions </td></tr>
<tr id="row_0_41_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1choice__t_3_010_01_4.html" target="_self">choice_t&lt; 0 &gt;</a></td><td class="desc">Utility class to disambiguate overloaded functions. </td></tr>
<tr id="row_0_42_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1component__traits.html" target="_self">component_traits</a></td><td class="desc">Common way to access various properties of components </td></tr>
<tr id="row_0_43_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1compressed__pair.html" target="_self">compressed_pair</a></td><td class="desc">A compressed pair </td></tr>
<tr id="row_0_44_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1connect__arg__t.html" target="_self">connect_arg_t</a></td><td class="desc">Disambiguation tag for constructors and the like </td></tr>
<tr id="row_0_45_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1connection.html" target="_self">connection</a></td><td class="desc">Connection class </td></tr>
<tr id="row_0_46_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1constness__as.html" target="_self">constness_as</a></td><td class="desc">Transcribes the constness of a type to another type </td></tr>
<tr id="row_0_47_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1constness__as_3_01To_00_01const_01From_01_4.html" target="_self">constness_as&lt; To, const From &gt;</a></td><td class="desc">Transcribes the constness of a type to another type. </td></tr>
<tr id="row_0_48_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1delegate.html" target="_self">delegate</a></td><td class="desc">Basic delegate implementation </td></tr>
<tr id="row_0_49_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1dense__map.html" target="_self">dense_map</a></td><td class="desc">Associative container for key-value pairs with unique keys </td></tr>
<tr id="row_0_50_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1dense__set.html" target="_self">dense_set</a></td><td class="desc">Associative container for unique objects of a given type </td></tr>
<tr id="row_0_51_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1directed__tag.html" target="_self">directed_tag</a></td><td class="desc">Undirected graph category tag </td></tr>
<tr id="row_0_52_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1emitter.html" target="_self">emitter</a></td><td class="desc">General purpose event emitter </td></tr>
<tr id="row_0_53_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1entt__traits.html" target="_self">entt_traits</a></td><td class="desc">Entity traits </td></tr>
<tr id="row_0_54_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1enum__as__bitmask.html" target="_self">enum_as_bitmask</a></td><td class="desc">Enable bitmask support for enum classes </td></tr>
<tr id="row_0_55_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1enum__as__bitmask_3_01Type_00_01std_1_1void__t_3_01decltype_07Type_1_1__entt__enum__as__bitmask_08_4_01_4.html" target="_self">enum_as_bitmask&lt; Type, std::void_t&lt; decltype(Type::_entt_enum_as_bitmask)&gt; &gt;</a></td><td class="desc">Enable bitmask support for enum classes. </td></tr>
<tr id="row_0_56_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1exclude__t.html" target="_self">exclude_t</a></td><td class="desc">Alias for exclusion lists </td></tr>
<tr id="row_0_57_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1family.html" target="_self">family</a></td><td class="desc">Dynamic identifier generator </td></tr>
<tr id="row_0_58_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1forward__apply.html" target="_self">forward_apply</a></td><td class="desc">Utility class to forward-and-apply tuple objects </td></tr>
<tr id="row_0_59_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1get__t.html" target="_self">get_t</a></td><td class="desc">Alias for lists of observed elements </td></tr>
<tr id="row_0_60_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1ident.html" target="_self">ident</a></td><td class="desc">Type integral identifiers </td></tr>
<tr id="row_0_61_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1identity.html" target="_self">identity</a></td><td class="desc">Identity function object (waiting for C++20) </td></tr>
<tr id="row_0_62_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1input__iterator__pointer.html" target="_self">input_iterator_pointer</a></td><td class="desc">Helper type to use as pointer with input iterators </td></tr>
<tr id="row_0_63_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1insertion__sort.html" target="_self">insertion_sort</a></td><td class="desc">Function object for performing insertion sort </td></tr>
<tr id="row_0_64_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1iota__iterator.html" target="_self">iota_iterator</a></td><td class="desc">Plain iota iterator (waiting for C++20) </td></tr>
<tr id="row_0_65_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__applicable.html" target="_self">is_applicable</a></td><td class="desc">Same as std::is_invocable, but with tuples </td></tr>
<tr id="row_0_66_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__applicable_3_01Func_00_01const_01Tuple_3_01Args_8_8_8_01_4_01_4.html" target="_self">is_applicable&lt; Func, const Tuple&lt; Args... &gt; &gt;</a></td><td class="desc">Same as std::is_invocable, but with tuples. </td></tr>
<tr id="row_0_67_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__applicable_3_01Func_00_01Tuple_3_01Args_8_8_8_01_4_01_4.html" target="_self">is_applicable&lt; Func, Tuple&lt; Args... &gt; &gt;</a></td><td class="desc">Same as std::is_invocable, but with tuples. </td></tr>
<tr id="row_0_68_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__applicable__r.html" target="_self">is_applicable_r</a></td><td class="desc">Same as std::is_invocable_r, but with tuples for arguments </td></tr>
<tr id="row_0_69_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__applicable__r_3_01Ret_00_01Func_00_01std_1_1tuple_3_01Args_8_8_8_01_4_01_4.html" target="_self">is_applicable_r&lt; Ret, Func, std::tuple&lt; Args... &gt; &gt;</a></td><td class="desc">Same as std::is_invocable_r, but with tuples for arguments. </td></tr>
<tr id="row_0_70_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__complete.html" target="_self">is_complete</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is complete, false otherwise </td></tr>
<tr id="row_0_71_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__complete_3_01Type_00_01std_1_1void__t_3_01decltype_07sizeof_07Type_08_08_4_01_4.html" target="_self">is_complete&lt; Type, std::void_t&lt; decltype(sizeof(Type))&gt; &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is complete, false otherwise. </td></tr>
<tr id="row_0_72_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__ebco__eligible.html" target="_self">is_ebco_eligible</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is both an empty and non-final class, false otherwise </td></tr>
<tr id="row_0_73_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__equality__comparable.html" target="_self">is_equality_comparable</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is equality comparable, false otherwise </td></tr>
<tr id="row_0_74_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__equality__comparable_3_01const_01Type_01_4.html" target="_self">is_equality_comparable&lt; const Type &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is equality comparable, false otherwise. </td></tr>
<tr id="row_0_75_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__iterator.html" target="_self">is_iterator</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is an iterator, false otherwise </td></tr>
<tr id="row_0_76_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__iterator_3_01Type_00_01std_1_1enable__if__t_3_9std_1_1is__void__v_3_01std_1_1r2784f1f1943c3c544a328e35ff343041.html" target="_self">is_iterator&lt; Type, std::enable_if_t&lt;!std::is_void_v&lt; std::remove_cv_t&lt; std::remove_pointer_t&lt; Type &gt; &gt; &gt; &gt; &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is an iterator, false otherwise. </td></tr>
<tr id="row_0_77_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like.html" target="_self">is_meta_pointer_like</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is a pointer-like type from the point of view of the meta system, false otherwise </td></tr>
<tr id="row_0_78_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like_3_01const_01Type_01_4.html" target="_self">is_meta_pointer_like&lt; const Type &gt;</a></td><td class="desc">Partial specialization to ensure that const pointer-like types are also accepted </td></tr>
<tr id="row_0_79_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like_3_01std_1_1shared__ptr_3_01Type_01_4_01_4.html" target="_self">is_meta_pointer_like&lt; std::shared_ptr&lt; Type &gt; &gt;</a></td><td class="desc">Makes <code>std::shared_ptr</code>s of any type pointer-like types for the meta system </td></tr>
<tr id="row_0_80_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like_3_01std_1_1unique__ptr_3_01Type_00_01Args_8_8_8_01_4_01_4.html" target="_self">is_meta_pointer_like&lt; std::unique_ptr&lt; Type, Args... &gt; &gt;</a></td><td class="desc">Makes <code>std::unique_ptr</code>s of any type pointer-like types for the meta system </td></tr>
<tr id="row_0_81_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like_3_01Type_01_5_01_4.html" target="_self">is_meta_pointer_like&lt; Type * &gt;</a></td><td class="desc">Makes plain pointers pointer-like types for the meta system </td></tr>
<tr id="row_0_82_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like_3_01Type_07_5_08_0fN_0e_4.html" target="_self">is_meta_pointer_like&lt; Type(*)[N]&gt;</a></td><td class="desc">Partial specialization used to reject pointers to arrays </td></tr>
<tr id="row_0_83_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__pointer__like_3_01Type_00_01std_1_1void__t_3_01typename_01Type_1_1is__meta__pointer__like_01_4_01_4.html" target="_self">is_meta_pointer_like&lt; Type, std::void_t&lt; typename Type::is_meta_pointer_like &gt; &gt;</a></td><td class="desc">Specialization for self-proclaimed meta pointer like types </td></tr>
<tr id="row_0_84_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__meta__policy.html" target="_self">is_meta_policy</a></td><td class="desc">Provides the member constant <code>value</code> to true if a type also is a meta policy, false otherwise </td></tr>
<tr id="row_0_85_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__transparent.html" target="_self">is_transparent</a></td><td class="desc">Provides the member constant <code>value</code> to true if <code>Type::is_transparent</code> is valid and denotes a type, false otherwise </td></tr>
<tr id="row_0_86_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__transparent_3_01Type_00_01std_1_1void__t_3_01typename_01Type_1_1is__transparent_01_4_01_4.html" target="_self">is_transparent&lt; Type, std::void_t&lt; typename Type::is_transparent &gt; &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if <code>Type::is_transparent</code> is valid and denotes a type, false otherwise. </td></tr>
<tr id="row_0_87_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__tuple.html" target="_self">is_tuple</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is a tuple, false otherwise </td></tr>
<tr id="row_0_88_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1is__tuple_3_01std_1_1tuple_3_01Args_8_8_8_01_4_01_4.html" target="_self">is_tuple&lt; std::tuple&lt; Args... &gt; &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if a given type is a tuple, false otherwise. </td></tr>
<tr id="row_0_89_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1iterable__adaptor.html" target="_self">iterable_adaptor</a></td><td class="desc">Utility class to create an iterable object from a pair of iterators </td></tr>
<tr id="row_0_90_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1locator.html" target="_self">locator</a></td><td class="desc">Service locator, nothing more </td></tr>
<tr id="row_0_91_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1member__class.html" target="_self">member_class</a></td><td class="desc">Extracts the class of a non-static member object or function </td></tr>
<tr id="row_0_92_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__any.html" target="_self">meta_any</a></td><td class="desc">Opaque wrapper for values of any type </td></tr>
<tr id="row_0_93_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__associative__container.html" target="_self">meta_associative_container</a></td><td class="desc">Proxy object for associative containers </td></tr>
<tr id="row_0_94_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits.html" target="_self">meta_associative_container_traits</a></td><td class="desc">Traits class template to be specialized to enable support for meta associative containers </td></tr>
<tr id="row_0_95_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits_3_01dense__map_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_associative_container_traits&lt; dense_map&lt; Args... &gt; &gt;</a></td><td class="desc">Meta associative container traits for <code><a class="el" href="classentt_1_1dense__map.html" title="Associative container for key-value pairs with unique keys.">dense_map</a></code>s of any type </td></tr>
<tr id="row_0_96_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits_3_01dense__set_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_associative_container_traits&lt; dense_set&lt; Args... &gt; &gt;</a></td><td class="desc">Meta associative container traits for <code><a class="el" href="classentt_1_1dense__set.html" title="Associative container for unique objects of a given type.">dense_set</a></code>s of any type </td></tr>
<tr id="row_0_97_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits_3_01std_1_1map_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_associative_container_traits&lt; std::map&lt; Args... &gt; &gt;</a></td><td class="desc">Meta associative container traits for <code>std::map</code>s of any type </td></tr>
<tr id="row_0_98_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits_3_01std_1_1set_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_associative_container_traits&lt; std::set&lt; Args... &gt; &gt;</a></td><td class="desc">Meta associative container traits for <code>std::set</code>s of any type </td></tr>
<tr id="row_0_99_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits_3_01std_1_1unordered__map_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_associative_container_traits&lt; std::unordered_map&lt; Args... &gt; &gt;</a></td><td class="desc">Meta associative container traits for <code>std::unordered_map</code>s of any type </td></tr>
<tr id="row_0_100_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__associative__container__traits_3_01std_1_1unordered__set_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_associative_container_traits&lt; std::unordered_set&lt; Args... &gt; &gt;</a></td><td class="desc">Meta associative container traits for <code>std::unordered_set</code>s of any type </td></tr>
<tr id="row_0_101_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__class__template__tag.html" target="_self">meta_class_template_tag</a></td><td class="desc">Utility class to disambiguate class templates </td></tr>
<tr id="row_0_102_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__ctx.html" target="_self">meta_ctx</a></td><td class="desc">Opaque meta context type </td></tr>
<tr id="row_0_103_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__ctx__arg__t.html" target="_self">meta_ctx_arg_t</a></td><td class="desc">Disambiguation tag for constructors and the like </td></tr>
<tr id="row_0_104_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__custom.html" target="_self">meta_custom</a></td><td class="desc">Opaque wrapper for user defined data of any type </td></tr>
<tr id="row_0_105_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__data.html" target="_self">meta_data</a></td><td class="desc">Opaque wrapper for data members </td></tr>
<tr id="row_0_106_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__factory.html" target="_self">meta_factory</a></td><td class="desc">Meta factory to be used for reflection purposes </td></tr>
<tr id="row_0_107_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__func.html" target="_self">meta_func</a></td><td class="desc">Opaque wrapper for member functions </td></tr>
<tr id="row_0_108_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor.html" target="_self">meta_function_descriptor</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_109_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor_3_01Type_00_01Ret_01Class_1_1_5_01_4.html" target="_self">meta_function_descriptor&lt; Type, Ret Class::* &gt;</a></td><td class="desc">Meta function descriptor </td></tr>
<tr id="row_0_110_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor_3_01Type_00_01Ret_07_5_08_07_08_4.html" target="_self">meta_function_descriptor&lt; Type, Ret(*)()&gt;</a></td><td class="desc">Meta function descriptor </td></tr>
<tr id="row_0_111_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor_3_01Type_00_01Ret_07_5_08_07MaybeType_00_01Args_8_8_8_08_4.html" target="_self">meta_function_descriptor&lt; Type, Ret(*)(MaybeType, Args...)&gt;</a></td><td class="desc">Meta function descriptor </td></tr>
<tr id="row_0_112_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor_3_01Type_00_01Ret_07Class_1_1_5_08_07Args_8_8_8_08_01const_01_4.html" target="_self">meta_function_descriptor&lt; Type, Ret(Class::*)(Args...) const &gt;</a></td><td class="desc">Meta function descriptor </td></tr>
<tr id="row_0_113_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor_3_01Type_00_01Ret_07Class_1_1_5_08_07Args_8_8_8_08_4.html" target="_self">meta_function_descriptor&lt; Type, Ret(Class::*)(Args...)&gt;</a></td><td class="desc">Meta function descriptor </td></tr>
<tr id="row_0_114_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__function__descriptor__traits.html" target="_self">meta_function_descriptor_traits</a></td><td class="desc">Meta function descriptor traits </td></tr>
<tr id="row_0_115_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__function__helper.html" target="_self">meta_function_helper</a></td><td class="desc">Meta function helper </td></tr>
<tr id="row_0_116_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__handle.html" target="_self">meta_handle</a></td><td class="desc">Opaque pointers to instances of any type </td></tr>
<tr id="row_0_117_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__sequence__container.html" target="_self">meta_sequence_container</a></td><td class="desc">Proxy object for sequence containers </td></tr>
<tr id="row_0_118_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__sequence__container__traits.html" target="_self">meta_sequence_container_traits</a></td><td class="desc">Traits class template to be specialized to enable support for meta sequence containers </td></tr>
<tr id="row_0_119_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__sequence__container__traits_3_01std_1_1array_3_01Type_00_01N_01_4_01_4.html" target="_self">meta_sequence_container_traits&lt; std::array&lt; Type, N &gt; &gt;</a></td><td class="desc">Meta sequence container traits for <code>std::array</code>s of any type </td></tr>
<tr id="row_0_120_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__sequence__container__traits_3_01std_1_1deque_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_sequence_container_traits&lt; std::deque&lt; Args... &gt; &gt;</a></td><td class="desc">Meta sequence container traits for <code>std::deque</code>s of any type </td></tr>
<tr id="row_0_121_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__sequence__container__traits_3_01std_1_1list_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_sequence_container_traits&lt; std::list&lt; Args... &gt; &gt;</a></td><td class="desc">Meta sequence container traits for <code>std::list</code>s of any type </td></tr>
<tr id="row_0_122_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__sequence__container__traits_3_01std_1_1vector_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_sequence_container_traits&lt; std::vector&lt; Args... &gt; &gt;</a></td><td class="desc">Meta sequence container traits for <code>std::vector</code>s of any type </td></tr>
<tr id="row_0_123_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__template__traits.html" target="_self">meta_template_traits</a></td><td class="desc">Traits class template to be specialized to enable support for meta template information </td></tr>
<tr id="row_0_124_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1meta__template__traits_3_01Clazz_3_01Args_8_8_8_01_4_01_4.html" target="_self">meta_template_traits&lt; Clazz&lt; Args... &gt; &gt;</a></td><td class="desc">General purpose traits class for generating meta template information </td></tr>
<tr id="row_0_125_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1meta__type.html" target="_self">meta_type</a></td><td class="desc">Opaque wrapper for types </td></tr>
<tr id="row_0_126_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1monostate.html" target="_self">monostate</a></td><td class="desc">Minimal implementation of the monostate pattern </td></tr>
<tr id="row_0_127_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1nth__argument.html" target="_self">nth_argument</a></td><td class="desc">Extracts the n-th argument of a <em>callable</em> type </td></tr>
<tr id="row_0_128_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1null__t.html" target="_self">null_t</a></td><td class="desc">Null object for all identifiers </td></tr>
<tr id="row_0_129_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1overloaded.html" target="_self">overloaded</a></td><td class="desc">Helper type for visitors </td></tr>
<tr id="row_0_130_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1owned__t.html" target="_self">owned_t</a></td><td class="desc">Alias for lists of owned elements </td></tr>
<tr id="row_0_131_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1poly__base.html" target="_self">poly_base</a></td><td class="desc">Poly base class used to inject functionalities into concepts </td></tr>
<tr id="row_0_132_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1poly__inspector.html" target="_self">poly_inspector</a></td><td class="desc">Inspector class used to infer the type of the virtual table </td></tr>
<tr id="row_0_133_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1poly__vtable.html" target="_self">poly_vtable</a></td><td class="desc">Static virtual table factory </td></tr>
<tr id="row_0_134_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1process.html" target="_self">process</a></td><td class="desc">Base class for processes </td></tr>
<tr id="row_0_135_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1process__adaptor.html" target="_self">process_adaptor</a></td><td class="desc">Adaptor for lambdas and functors to turn them into processes </td></tr>
<tr id="row_0_136_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1radix__sort.html" target="_self">radix_sort</a></td><td class="desc">Function object for performing LSD radix sort </td></tr>
<tr id="row_0_137_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1reactive.html" target="_self">reactive</a></td><td class="desc">Empty value type for reactive storage types </td></tr>
<tr id="row_0_138_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1resource.html" target="_self">resource</a></td><td class="desc">Basic resource handle </td></tr>
<tr id="row_0_139_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1resource__cache.html" target="_self">resource_cache</a></td><td class="desc">Basic cache for resources of any type </td></tr>
<tr id="row_0_140_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1resource__loader.html" target="_self">resource_loader</a></td><td class="desc">Transparent loader for shared resources </td></tr>
<tr id="row_0_141_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1scoped__connection.html" target="_self">scoped_connection</a></td><td class="desc">Scoped connection class </td></tr>
<tr id="row_0_142_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1sigh.html" target="_self">sigh</a></td><td class="desc">Unmanaged signal handler </td></tr>
<tr id="row_0_143_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1sigh__helper.html" target="_self">sigh_helper</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_144_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1sigh__helper_3_01Registry_01_4.html" target="_self">sigh_helper&lt; Registry &gt;</a></td><td class="desc">Signal connection helper for registries </td></tr>
<tr id="row_0_145_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1sigh__helper_3_01Registry_00_01Type_01_4.html" target="_self">sigh_helper&lt; Registry, Type &gt;</a></td><td class="desc">Signal connection helper for registries </td></tr>
<tr id="row_0_146_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classentt_1_1sink.html" target="_self">sink</a></td><td class="desc">Sink class </td></tr>
<tr id="row_0_147_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1size__of.html" target="_self">size_of</a></td><td class="desc">A type-only <code>sizeof</code> wrapper that returns 0 where <code>sizeof</code> complains </td></tr>
<tr id="row_0_148_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1size__of_3_01Type_00_01std_1_1void__t_3_01decltype_07sizeof_07Type_08_08_4_01_4.html" target="_self">size_of&lt; Type, std::void_t&lt; decltype(sizeof(Type))&gt; &gt;</a></td><td class="desc">A type-only <code>sizeof</code> wrapper that returns 0 where <code>sizeof</code> complains. </td></tr>
<tr id="row_0_149_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1std__sort.html" target="_self">std_sort</a></td><td class="desc">Function object to wrap <code>std::sort</code> in a class type </td></tr>
<tr id="row_0_150_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1storage__for.html" target="_self">storage_for</a></td><td class="desc"></td></tr>
<tr id="row_0_151_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1storage__type.html" target="_self">storage_type</a></td><td class="desc">Provides a common way to define storage types </td></tr>
<tr id="row_0_152_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1storage__type_3_01reactive_00_01Entity_00_01Allocator_01_4.html" target="_self">storage_type&lt; reactive, Entity, Allocator &gt;</a></td><td class="desc"></td></tr>
<tr id="row_0_153_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1tombstone__t.html" target="_self">tombstone_t</a></td><td class="desc">Tombstone object for all identifiers </td></tr>
<tr id="row_0_154_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__hash.html" target="_self">type_hash</a></td><td class="desc">Type hash </td></tr>
<tr id="row_0_155_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__identity.html" target="_self">type_identity</a></td><td class="desc">Identity type trait </td></tr>
<tr id="row_0_156_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__index.html" target="_self">type_index</a></td><td class="desc">Type sequential identifier </td></tr>
<tr id="row_0_157_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__info.html" target="_self">type_info</a></td><td class="desc">Implementation specific information about a type </td></tr>
<tr id="row_0_158_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list.html" target="_self">type_list</a></td><td class="desc">A class to use to push around lists of types, nothing more </td></tr>
<tr id="row_0_159_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__cat.html" target="_self">type_list_cat</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_160_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__cat_3_01type__list_3_01Type_8_8_8_01_4_01_4.html" target="_self">type_list_cat&lt; type_list&lt; Type... &gt; &gt;</a></td><td class="desc">Concatenates multiple type lists </td></tr>
<tr id="row_0_161_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__cat_3_01type__list_3_01Type_8_8_8_01_4_00_01type__list_3_01Other_8_8_8_01_4_00_01List_8_8_8_01_4.html" target="_self">type_list_cat&lt; type_list&lt; Type... &gt;, type_list&lt; Other... &gt;, List... &gt;</a></td><td class="desc">Concatenates multiple type lists </td></tr>
<tr id="row_0_162_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__cat_3_4.html" target="_self">type_list_cat&lt;&gt;</a></td><td class="desc">Concatenates multiple type lists </td></tr>
<tr id="row_0_163_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__contains.html" target="_self">type_list_contains</a></td><td class="desc">Provides the member constant <code>value</code> to true if a type list contains a given type, false otherwise </td></tr>
<tr id="row_0_164_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__contains_3_01type__list_3_01Type_8_8_8_01_4_00_01Other_01_4.html" target="_self">type_list_contains&lt; type_list&lt; Type... &gt;, Other &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if a type list contains a given type, false otherwise. </td></tr>
<tr id="row_0_165_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__diff.html" target="_self">type_list_diff</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_166_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__diff_3_01type__list_3_01Type_8_8_8_01_4_00_01type__list_3_01Other_8_8_8_01_4_01_4.html" target="_self">type_list_diff&lt; type_list&lt; Type... &gt;, type_list&lt; Other... &gt; &gt;</a></td><td class="desc">Computes the difference between two type lists </td></tr>
<tr id="row_0_167_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__element.html" target="_self">type_list_element</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_168_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__element_3_010u_00_01type__list_3_01First_00_01Other_8_8_8_01_4_01_4.html" target="_self">type_list_element&lt; 0u, type_list&lt; First, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time indexed access to the types of a type list </td></tr>
<tr id="row_0_169_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__element_3_01Index_00_01type__list_3_01First_00_01Other_8_8_8_01_4_01_4.html" target="_self">type_list_element&lt; Index, type_list&lt; First, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time indexed access to the types of a type list </td></tr>
<tr id="row_0_170_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__index.html" target="_self">type_list_index</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_171_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__index_3_01Type_00_01type__list_3_01First_00_01Other_8_8_8_01_4_01_4.html" target="_self">type_list_index&lt; Type, type_list&lt; First, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time type access to the types of a type list </td></tr>
<tr id="row_0_172_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__index_3_01Type_00_01type__list_3_01Type_00_01Other_8_8_8_01_4_01_4.html" target="_self">type_list_index&lt; Type, type_list&lt; Type, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time type access to the types of a type list </td></tr>
<tr id="row_0_173_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__index_3_01Type_00_01type__list_3_4_01_4.html" target="_self">type_list_index&lt; Type, type_list&lt;&gt; &gt;</a></td><td class="desc">Provides compile-time type access to the types of a type list </td></tr>
<tr id="row_0_174_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__transform.html" target="_self">type_list_transform</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_175_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__transform_3_01exclude__t_3_01Type_8_8_8_01_4_00_01Op_01_4.html" target="_self">type_list_transform&lt; exclude_t&lt; Type... &gt;, Op &gt;</a></td><td class="desc">Applies a given <em>function</em> to an exclude list and generate a new list </td></tr>
<tr id="row_0_176_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__transform_3_01get__t_3_01Type_8_8_8_01_4_00_01Op_01_4.html" target="_self">type_list_transform&lt; get_t&lt; Type... &gt;, Op &gt;</a></td><td class="desc">Applies a given <em>function</em> to a get list and generate a new list </td></tr>
<tr id="row_0_177_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__transform_3_01owned__t_3_01Type_8_8_8_01_4_00_01Op_01_4.html" target="_self">type_list_transform&lt; owned_t&lt; Type... &gt;, Op &gt;</a></td><td class="desc">Applies a given <em>function</em> to an owned list and generate a new list </td></tr>
<tr id="row_0_178_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__transform_3_01type__list_3_01Type_8_8_8_01_4_00_01Op_01_4.html" target="_self">type_list_transform&lt; type_list&lt; Type... &gt;, Op &gt;</a></td><td class="desc">Applies a given <em>function</em> to a type list and generate a new list </td></tr>
<tr id="row_0_179_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__list__unique.html" target="_self">type_list_unique</a></td><td class="desc">Removes duplicates types from a type list </td></tr>
<tr id="row_0_180_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1type__name.html" target="_self">type_name</a></td><td class="desc">Type name </td></tr>
<tr id="row_0_181_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1undirected__tag.html" target="_self">undirected_tag</a></td><td class="desc">Directed graph category tag </td></tr>
<tr id="row_0_182_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list.html" target="_self">value_list</a></td><td class="desc">A class to use to push around lists of constant values, nothing more </td></tr>
<tr id="row_0_183_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__cat.html" target="_self">value_list_cat</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_184_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__cat_3_01value__list_3_01Value_8_8_8_01_4_01_4.html" target="_self">value_list_cat&lt; value_list&lt; Value... &gt; &gt;</a></td><td class="desc">Concatenates multiple value lists </td></tr>
<tr id="row_0_185_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__cat_3_01value__list_3_01Value_8_8_8_01_4_00_01value__list_3_01Other_8_8_8_01_4_00_01List_8_8_8_01_4.html" target="_self">value_list_cat&lt; value_list&lt; Value... &gt;, value_list&lt; Other... &gt;, List... &gt;</a></td><td class="desc">Concatenates multiple value lists </td></tr>
<tr id="row_0_186_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__cat_3_4.html" target="_self">value_list_cat&lt;&gt;</a></td><td class="desc">Concatenates multiple value lists </td></tr>
<tr id="row_0_187_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__contains.html" target="_self">value_list_contains</a></td><td class="desc">Provides the member constant <code>value</code> to true if a value list contains a given value, false otherwise </td></tr>
<tr id="row_0_188_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__contains_3_01value__list_3_01Value_8_8_8_01_4_00_01Other_01_4.html" target="_self">value_list_contains&lt; value_list&lt; Value... &gt;, Other &gt;</a></td><td class="desc">Provides the member constant <code>value</code> to true if a value list contains a given value, false otherwise. </td></tr>
<tr id="row_0_189_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__diff.html" target="_self">value_list_diff</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_190_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__diff_3_01value__list_3_01Value_8_8_8_01_4_00_01value__list_3_01Other_8_8_8_01_4_01_4.html" target="_self">value_list_diff&lt; value_list&lt; Value... &gt;, value_list&lt; Other... &gt; &gt;</a></td><td class="desc">Computes the difference between two value lists </td></tr>
<tr id="row_0_191_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__element.html" target="_self">value_list_element</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_192_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__element_3_010u_00_01value__list_3_01Value_00_01Other_8_8_8_01_4_01_4.html" target="_self">value_list_element&lt; 0u, value_list&lt; Value, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time indexed access to the types of a type list </td></tr>
<tr id="row_0_193_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__element_3_01Index_00_01value__list_3_01Value_00_01Other_8_8_8_01_4_01_4.html" target="_self">value_list_element&lt; Index, value_list&lt; Value, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time indexed access to the values of a value list </td></tr>
<tr id="row_0_194_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__index.html" target="_self">value_list_index</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_195_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__index_3_01Value_00_01value__list_3_01First_00_01Other_8_8_8_01_4_01_4.html" target="_self">value_list_index&lt; Value, value_list&lt; First, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time type access to the values of a value list </td></tr>
<tr id="row_0_196_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__index_3_01Value_00_01value__list_3_01Value_00_01Other_8_8_8_01_4_01_4.html" target="_self">value_list_index&lt; Value, value_list&lt; Value, Other... &gt; &gt;</a></td><td class="desc">Provides compile-time type access to the values of a value list </td></tr>
<tr id="row_0_197_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__index_3_01Value_00_01value__list_3_4_01_4.html" target="_self">value_list_index&lt; Value, value_list&lt;&gt; &gt;</a></td><td class="desc">Provides compile-time type access to the values of a value list </td></tr>
<tr id="row_0_198_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__unique.html" target="_self">value_list_unique</a></td><td class="desc">Primary template isn't defined on purpose </td></tr>
<tr id="row_0_199_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__unique_3_01value__list_3_01Value_00_01Other_8_8_8_01_4_01_4.html" target="_self">value_list_unique&lt; value_list&lt; Value, Other... &gt; &gt;</a></td><td class="desc">Removes duplicates values from a value list </td></tr>
<tr id="row_0_200_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1value__list__unique_3_01value__list_3_4_01_4.html" target="_self">value_list_unique&lt; value_list&lt;&gt; &gt;</a></td><td class="desc">Removes duplicates values from a value list </td></tr>
<tr id="row_0_201_" class="odd" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structentt_1_1y__combinator.html" target="_self">y_combinator</a></td><td class="desc">Basic implementation of a y-combinator </td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="dynsection.toggleFolder('1_')">&#9658;</span><span class="icona"><span class="icon">N</span></span><b>std</b></td><td class="desc"></td></tr>
<tr id="row_1_0_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstd_1_1tuple__element_3_01Index_00_01entt_1_1compressed__pair_3_01First_00_01Second_01_4_01_4.html" target="_self">tuple_element&lt; Index, entt::compressed_pair&lt; First, Second &gt; &gt;</a></td><td class="desc"><code>std::tuple_element</code> specialization for <code>compressed_pair</code>s </td></tr>
<tr id="row_1_1_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstd_1_1tuple__element_3_01Index_00_01entt_1_1type__list_3_01Type_8_8_8_01_4_01_4.html" target="_self">tuple_element&lt; Index, entt::type_list&lt; Type... &gt; &gt;</a></td><td class="desc"></td></tr>
<tr id="row_1_2_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstd_1_1tuple__element_3_01Index_00_01entt_1_1value__list_3_01Value_8_8_8_01_4_01_4.html" target="_self">tuple_element&lt; Index, entt::value_list&lt; Value... &gt; &gt;</a></td><td class="desc"></td></tr>
<tr id="row_1_3_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstd_1_1tuple__size_3_01entt_1_1compressed__pair_3_01First_00_01Second_01_4_01_4.html" target="_self">tuple_size&lt; entt::compressed_pair&lt; First, Second &gt; &gt;</a></td><td class="desc"><code>std::tuple_size</code> specialization for <code>compressed_pair</code>s </td></tr>
<tr id="row_1_4_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstd_1_1tuple__size_3_01entt_1_1type__list_3_01Type_8_8_8_01_4_01_4.html" target="_self">tuple_size&lt; entt::type_list&lt; Type... &gt; &gt;</a></td><td class="desc"></td></tr>
<tr id="row_1_5_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structstd_1_1tuple__size_3_01entt_1_1value__list_3_01Value_8_8_8_01_4_01_4.html" target="_self">tuple_size&lt; entt::value_list&lt; Value... &gt; &gt;</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+611
View File
@@ -0,0 +1,611 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/core/any.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_de8f4e6ba3f54a2a21309f742e93a373.html">core</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">any.hpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_CORE_ANY_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_CORE_ANY_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;cstddef&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;type_traits&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;utility&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;../config/config.h&quot;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;../core/utility.hpp&quot;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;fwd.hpp&quot;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;type_info.hpp&quot;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;type_traits.hpp&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceentt.html">entt</a> {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="keyword">namespace </span>internal {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="keyword">enum class</span> any_request : std::uint8_t {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> transfer,</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> assign,</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> destroy,</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> compare,</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> copy,</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> move,</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_variable" href="namespaceentt.html#a8c24ecc5ab0055f9f2a4725c95afb29e">get</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>};</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> </div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>} <span class="comment">// namespace internal</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="keyword">template</span>&lt;std::<span class="keywordtype">size_t</span> Len, std::<span class="keywordtype">size_t</span> Align&gt;</div>
<div class="foldopen" id="foldopen00038" data-start="{" data-end="};">
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html"> 38</a></span><span class="keyword">class </span>basic_any {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">using </span>request = internal::any_request;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">using </span>vtable_type = <span class="keyword">const</span> <span class="keywordtype">void</span> *(<span class="keyword">const</span> request, <span class="keyword">const</span> basic_any &amp;, <span class="keyword">const</span> <span class="keywordtype">void</span> *);</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">struct </span>storage_type {</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="comment">// NOLINTNEXTLINE(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">alignas</span>(Align) std::byte <a class="code hl_function" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">data</a>[Len + <span class="keyword">static_cast&lt;</span>std::size_t<span class="keyword">&gt;</span>(Len == 0u)];</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> };</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="comment">// NOLINTNEXTLINE(bugprone-sizeof-expression)</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">static</span> <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> in_situ = (Len != 0u) &amp;&amp; <span class="keyword">alignof</span>(Type) &lt;= Align &amp;&amp; <span class="keyword">sizeof</span>(Type) &lt;= Len &amp;&amp; std::is_nothrow_move_constructible_v&lt;Type&gt;;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">void</span> *basic_vtable(<span class="keyword">const</span> request req, <span class="keyword">const</span> basic_any &amp;value, <span class="keyword">const</span> <span class="keywordtype">void</span> *other) {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keyword">static_assert</span>(!std::is_void_v&lt;Type&gt; &amp;&amp; std::is_same_v&lt;std::remove_cv_t&lt;std::remove_reference_t&lt;Type&gt;&gt;, Type&gt;, <span class="stringliteral">&quot;Invalid type&quot;</span>);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keyword">const</span> Type *elem = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(in_situ&lt;Type&gt;) {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> elem = (value.mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>) ? <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span>Type *<span class="keyword">&gt;</span>(&amp;value.storage) : <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>Type *<span class="keyword">&gt;</span>(value.instance);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> elem = <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>Type *<span class="keyword">&gt;</span>(value.instance);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> }</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">switch</span>(req) {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">case</span> request::transfer:</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_move_assignable_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="comment">// NOLINTNEXTLINE(bugprone-casting-through-void)</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> *<span class="keyword">const_cast&lt;</span>Type *<span class="keyword">&gt;</span>(elem) = std::move(*<span class="keyword">static_cast&lt;</span>Type *<span class="keyword">&gt;</span>(<span class="keyword">const_cast&lt;</span><span class="keywordtype">void</span> *<span class="keyword">&gt;</span>(other)));</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> other;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> [[fallthrough]];</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">case</span> request::assign:</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_copy_assignable_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> *<span class="keyword">const_cast&lt;</span>Type *<span class="keyword">&gt;</span>(elem) = *<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>Type *<span class="keyword">&gt;</span>(other);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">return</span> other;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> }</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">case</span> request::destroy:</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(in_situ&lt;Type&gt;) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> (value.mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>) ? elem-&gt;~Type() : (<span class="keyword">delete</span> elem);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_array_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keyword">delete</span>[] elem;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keyword">delete</span> elem;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">case</span> request::compare:</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(!std::is_function_v&lt;Type&gt; &amp;&amp; !std::is_array_v&lt;Type&gt; &amp;&amp; <a class="code hl_variable" href="namespaceentt.html#a068dd98a70c771935d2bf3dd96dbad6d">is_equality_comparable_v&lt;Type&gt;</a>) {</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">return</span> (*elem == *<span class="keyword">static_cast&lt;</span><span class="keyword">const </span>Type *<span class="keyword">&gt;</span>(other)) ? other : <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">return</span> (elem == other) ? other : <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> }</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">case</span> request::copy:</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_copy_constructible_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="comment">// NOLINTNEXTLINE(bugprone-casting-through-void)</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keyword">static_cast&lt;</span>basic_any *<span class="keyword">&gt;</span>(<span class="keyword">const_cast&lt;</span><span class="keywordtype">void</span> *<span class="keyword">&gt;</span>(other))-&gt;initialize&lt;Type&gt;(*elem);</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> }</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">case</span> request::move:</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> ENTT_ASSERT(value.mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>, <span class="stringliteral">&quot;Unexpected policy&quot;</span>);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(in_situ&lt;Type&gt;) {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="comment">// NOLINTNEXTLINE(bugprone-casting-through-void, bugprone-multi-level-implicit-pointer-conversion)</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> return ::new(&amp;<span class="keyword">static_cast&lt;</span>basic_any *<span class="keyword">&gt;</span>(<span class="keyword">const_cast&lt;</span><span class="keywordtype">void</span> *<span class="keyword">&gt;</span>(other))-&gt;storage) Type{std::move(*<span class="keyword">const_cast&lt;</span>Type *<span class="keyword">&gt;</span>(elem))};</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> }</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> [[fallthrough]];</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">case</span> request::get:</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> ENTT_ASSERT(value.mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>, <span class="stringliteral">&quot;Unexpected policy&quot;</span>);</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(in_situ&lt;Type&gt;) {</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="comment">// NOLINTNEXTLINE(bugprone-multi-level-implicit-pointer-conversion)</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">return</span> elem;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> }</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> }</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> }</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> </div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span>... Args&gt;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">void</span> initialize([[maybe_unused]] Args &amp;&amp;...args) {</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(!std::is_void_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keyword">using </span>plain_type = std::remove_cv_t&lt;std::remove_reference_t&lt;Type&gt;&gt;;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> info = &amp;<a class="code hl_function" href="namespaceentt.html#adb9682d476edbbe4434680363f9c0eb3">type_id&lt;plain_type&gt;</a>();</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> vtable = basic_vtable&lt;plain_type&gt;;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_lvalue_reference_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keyword">static_assert</span>((std::is_lvalue_reference_v&lt;Args&gt; &amp;&amp; ...) &amp;&amp; (<span class="keyword">sizeof</span>...(Args) == 1u), <span class="stringliteral">&quot;Invalid arguments&quot;</span>);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> mode = std::is_const_v&lt;std::remove_reference_t&lt;Type&gt;&gt; ? <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> : <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a18389a4a9ad5795744699cff0ba66c15">any_policy::ref</a>;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="comment">// NOLINTNEXTLINE(bugprone-multi-level-implicit-pointer-conversion)</span></div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> instance = (std::addressof(args), ...);</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(in_situ&lt;plain_type&gt;) {</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> mode = <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> </div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_aggregate_v&lt;plain_type&gt; &amp;&amp; (<span class="keyword">sizeof</span>...(Args) != 0u || !std::is_default_constructible_v&lt;plain_type&gt;)) {</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> ::new(&amp;storage) plain_type{std::forward&lt;Args&gt;(args)...};</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="comment">// NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-array-to-pointer-decay)</span></div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> ::new(&amp;storage) plain_type(std::forward&lt;Args&gt;(args)...);</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> }</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> mode = <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549ab72f3bd391ba731a35708bfd8cd8a68f">any_policy::dynamic</a>;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_aggregate_v&lt;plain_type&gt; &amp;&amp; (<span class="keyword">sizeof</span>...(Args) != 0u || !std::is_default_constructible_v&lt;plain_type&gt;)) {</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> instance = <span class="keyword">new</span> plain_type{std::forward&lt;Args&gt;(args)...};</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_array_v&lt;plain_type&gt;) {</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keyword">static_assert</span>(<span class="keyword">sizeof</span>...(Args) == 0u, <span class="stringliteral">&quot;Invalid arguments&quot;</span>);</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> instance = <span class="keyword">new</span> plain_type[std::extent_v&lt;plain_type&gt;]();</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> instance = <span class="keyword">new</span> plain_type(std::forward&lt;Args&gt;(args)...);</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> }</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> }</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> }</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> }</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a164cd19f4369e7c010f4581971ae2c9c">basic_any</a>(<span class="keyword">const</span> basic_any &amp;other, <span class="keyword">const</span> <a class="code hl_enumeration" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549">any_policy</a> pol) noexcept</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> : instance{other.data()},</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> info{other.info},</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> vtable{other.vtable},</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> mode{pol} {}</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> </div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a5fbc1fb99c934c59524af552ae2a33c3"> 160</a></span> <span class="keyword">static</span> <span class="keyword">constexpr</span> <span class="keyword">auto</span> <a class="code hl_variable" href="classentt_1_1basic__any.html#a5fbc1fb99c934c59524af552ae2a33c3">length</a> = Len;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a8248e8443c6208077db312079a05fd96"> 162</a></span> <span class="keyword">static</span> <span class="keyword">constexpr</span> <span class="keyword">auto</span> <a class="code hl_variable" href="classentt_1_1basic__any.html#a8248e8443c6208077db312079a05fd96">alignment</a> = Align;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span></div>
<div class="foldopen" id="foldopen00165" data-start="{" data-end="}">
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a164cd19f4369e7c010f4581971ae2c9c"> 165</a></span> <span class="keyword">constexpr</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a164cd19f4369e7c010f4581971ae2c9c">basic_any</a>() noexcept</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> : basic_any{std::in_place_type&lt;void&gt;} {}</div>
</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span></div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span>... Args&gt;</div>
<div class="foldopen" id="foldopen00175" data-start="{" data-end="}">
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a3a84c837c69ab23b08a535ab79f7eefa"> 175</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a3a84c837c69ab23b08a535ab79f7eefa">basic_any</a>(std::in_place_type_t&lt;Type&gt;, Args &amp;&amp;...args)</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> : instance{} {</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> initialize&lt;Type&gt;(std::forward&lt;Args&gt;(args)...);</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> }</div>
</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span></div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00186" data-start="{" data-end="}">
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#aa73a486cc548eb0625807c6e4c43fe8c"> 186</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="classentt_1_1basic__any.html#aa73a486cc548eb0625807c6e4c43fe8c">basic_any</a>(std::in_place_t, Type *value)</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> : instance{} {</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="keyword">static_assert</span>(!std::is_const_v&lt;Type&gt; &amp;&amp; !std::is_void_v&lt;Type&gt;, <span class="stringliteral">&quot;Non-const non-void pointer required&quot;</span>);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">if</span>(value != <span class="keyword">nullptr</span>) {</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> initialize&lt;Type &amp;&gt;(*value);</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> mode = <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549ab72f3bd391ba731a35708bfd8cd8a68f">any_policy::dynamic</a>;</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> }</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> }</div>
</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span> = std::enable_if_t&lt;!std::is_same_v&lt;std::decay_t&lt;Type&gt;, basic_any&gt;&gt;&gt;</div>
<div class="foldopen" id="foldopen00202" data-start="{" data-end="}">
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#afb1d00c509ae9127faa1cc2a5887bdab"> 202</a></span> <a class="code hl_function" href="classentt_1_1basic__any.html#afb1d00c509ae9127faa1cc2a5887bdab">basic_any</a>(Type &amp;&amp;value)</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> : basic_any{std::in_place_type&lt;std::decay_t&lt;Type&gt;&gt;, std::forward&lt;Type&gt;(value)} {}</div>
</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span></div>
<div class="foldopen" id="foldopen00209" data-start="{" data-end="}">
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a3196700b32252e5b59a79994b907afda"> 209</a></span> <a class="code hl_function" href="classentt_1_1basic__any.html#a3196700b32252e5b59a79994b907afda">basic_any</a>(<span class="keyword">const</span> basic_any &amp;other)</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> : basic_any{} {</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <span class="keywordflow">if</span>(other.vtable) {</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> other.vtable(request::copy, other, <span class="keyword">this</span>);</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> }</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> }</div>
</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span></div>
<div class="foldopen" id="foldopen00220" data-start="{" data-end="}">
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#aa335df93ca9c2ba89efd9664f9e66609"> 220</a></span> <a class="code hl_function" href="classentt_1_1basic__any.html#aa335df93ca9c2ba89efd9664f9e66609">basic_any</a>(basic_any &amp;&amp;other) noexcept</div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> : instance{},</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> info{other.info},</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> vtable{other.vtable},</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> mode{other.mode} {</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">if</span>(other.mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>) {</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> other.vtable(request::move, other, <span class="keyword">this</span>);</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(other.mode != <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549aa2e4822a98337283e39f7b60acf85ec9">any_policy::empty</a>) {</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> instance = std::exchange(other.instance, <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> }</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> }</div>
</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span></div>
<div class="foldopen" id="foldopen00233" data-start="{" data-end="}">
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ab103382955f577cd8a714c7b5b89d9c6"> 233</a></span> <a class="code hl_function" href="classentt_1_1basic__any.html#ab103382955f577cd8a714c7b5b89d9c6">~basic_any</a>() {</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">if</span>(<a class="code hl_function" href="classentt_1_1basic__any.html#a4f36479ca4ac3ad94a80fc3ac3eb1a24">owner</a>()) {</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> vtable(request::destroy, *<span class="keyword">this</span>, <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> }</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> }</div>
</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span></div>
<div class="foldopen" id="foldopen00244" data-start="{" data-end="}">
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ab3f60cd57d55ff657927371cf06c2325"> 244</a></span> basic_any &amp;<a class="code hl_function" href="classentt_1_1basic__any.html#ab3f60cd57d55ff657927371cf06c2325">operator=</a>(<span class="keyword">const</span> basic_any &amp;other) {</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">if</span>(<span class="keyword">this</span> != &amp;other) {</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6">reset</a>();</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> </div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">if</span>(other.vtable) {</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> other.vtable(request::copy, other, <span class="keyword">this</span>);</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> }</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> }</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> </div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> }</div>
</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span></div>
<div class="foldopen" id="foldopen00265" data-start="{" data-end="}">
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ace596f46c6bb613430b9f7ee5e4b3d01"> 265</a></span> basic_any &amp;<a class="code hl_function" href="classentt_1_1basic__any.html#ace596f46c6bb613430b9f7ee5e4b3d01">operator=</a>(basic_any &amp;&amp;other) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6">reset</a>();</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> </div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">if</span>(other.mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>) {</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> other.vtable(request::move, other, <span class="keyword">this</span>);</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(other.mode != <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549aa2e4822a98337283e39f7b60acf85ec9">any_policy::empty</a>) {</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> instance = std::exchange(other.instance, <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> }</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> </div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> info = other.info;</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> vtable = other.vtable;</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> mode = other.mode;</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> </div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> }</div>
</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span></div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span> = std::enable_if_t&lt;!std::is_same_v&lt;std::decay_t&lt;Type&gt;, basic_any&gt;&gt;&gt;</div>
<div class="foldopen" id="foldopen00288" data-start="{" data-end="}">
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ac54b5130a6ceee1cc396290e7701a7c3"> 288</a></span> basic_any &amp;<a class="code hl_function" href="classentt_1_1basic__any.html#ac54b5130a6ceee1cc396290e7701a7c3">operator=</a>(Type &amp;&amp;value) {</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a612abee6a4ebf016df27929668839fc0">emplace&lt;std::decay_t&lt;Type&gt;</a>&gt;(std::forward&lt;Type&gt;(value));</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> }</div>
</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span></div>
<div class="foldopen" id="foldopen00297" data-start="{" data-end="}">
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a63c48ddb1677383ba12752ffa387139b"> 297</a></span> [[nodiscard]] <span class="keyword">const</span> <a class="code hl_struct" href="structentt_1_1type__info.html">type_info</a> &amp;<a class="code hl_function" href="classentt_1_1basic__any.html#a63c48ddb1677383ba12752ffa387139b">type</a>() const noexcept {</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> <span class="keywordflow">return</span> (info == <span class="keyword">nullptr</span>) ? <a class="code hl_function" href="namespaceentt.html#adb9682d476edbbe4434680363f9c0eb3">type_id&lt;void&gt;</a>() : *info;</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> }</div>
</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span></div>
<div class="foldopen" id="foldopen00305" data-start="{" data-end="}">
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3"> 305</a></span> [[nodiscard]] <span class="keyword">const</span> <span class="keywordtype">void</span> *<a class="code hl_function" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">data</a>() const noexcept {</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> <span class="keywordflow">return</span> (mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>) ? vtable(request::get, *<span class="keyword">this</span>, <span class="keyword">nullptr</span>) : instance;</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> }</div>
</div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span></div>
<div class="foldopen" id="foldopen00314" data-start="{" data-end="}">
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#afce19133c0447cf4abfb1eea3f812959"> 314</a></span> [[nodiscard]] <span class="keyword">const</span> <span class="keywordtype">void</span> *<a class="code hl_function" href="classentt_1_1basic__any.html#afce19133c0447cf4abfb1eea3f812959">data</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structentt_1_1type__info.html">type_info</a> &amp;req) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> <span class="keywordflow">return</span> (<a class="code hl_function" href="classentt_1_1basic__any.html#a63c48ddb1677383ba12752ffa387139b">type</a>() == req) ? <a class="code hl_function" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">data</a>() : <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> }</div>
</div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span></div>
<div class="foldopen" id="foldopen00322" data-start="{" data-end="}">
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#af8f31671bcdb27166a7614a795680ef6"> 322</a></span> [[nodiscard]] <span class="keywordtype">void</span> *<a class="code hl_function" href="classentt_1_1basic__any.html#af8f31671bcdb27166a7614a795680ef6">data</a>() noexcept {</div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">return</span> mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> ? nullptr : <span class="keyword">const_cast&lt;</span><span class="keywordtype">void</span> *<span class="keyword">&gt;</span>(std::as_const(*this).data());</div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> }</div>
</div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span></div>
<div class="foldopen" id="foldopen00331" data-start="{" data-end="}">
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ab90a391cc904cb9b68be91b36dd2155e"> 331</a></span> [[nodiscard]] <span class="keywordtype">void</span> *<a class="code hl_function" href="classentt_1_1basic__any.html#ab90a391cc904cb9b68be91b36dd2155e">data</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structentt_1_1type__info.html">type_info</a> &amp;req) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">return</span> mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> ? nullptr : <span class="keyword">const_cast&lt;</span><span class="keywordtype">void</span> *<span class="keyword">&gt;</span>(std::as_const(*this).data(req));</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> }</div>
</div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span></div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span>... Args&gt;</div>
<div class="foldopen" id="foldopen00342" data-start="{" data-end="}">
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a612abee6a4ebf016df27929668839fc0"> 342</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a612abee6a4ebf016df27929668839fc0">emplace</a>(Args &amp;&amp;...args) {</div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6">reset</a>();</div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> initialize&lt;Type&gt;(std::forward&lt;Args&gt;(args)...);</div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> }</div>
</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span></div>
<div class="foldopen" id="foldopen00352" data-start="{" data-end="}">
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a4fc7178c09a4c7fc57891183800d1688"> 352</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a4fc7178c09a4c7fc57891183800d1688">assign</a>(<span class="keyword">const</span> basic_any &amp;other) {</div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">if</span>(vtable &amp;&amp; mode != <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> &amp;&amp; *info == other.<a class="code hl_function" href="classentt_1_1basic__any.html#a63c48ddb1677383ba12752ffa387139b">type</a>()) {</div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> <span class="keywordflow">return</span> (vtable(request::assign, *<span class="keyword">this</span>, other.<a class="code hl_function" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">data</a>()) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> }</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> </div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> }</div>
</div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span></div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> <span class="comment">// NOLINTNEXTLINE(cppcoreguidelines-rvalue-reference-param-not-moved)</span></div>
<div class="foldopen" id="foldopen00362" data-start="{" data-end="}">
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a5765d9d4bcc5098791f3e84d4f92288f"> 362</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a5765d9d4bcc5098791f3e84d4f92288f">assign</a>(basic_any &amp;&amp;other) {</div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> <span class="keywordflow">if</span>(vtable &amp;&amp; mode != <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> &amp;&amp; *info == other.type()) {</div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span> <span class="keywordflow">if</span>(<span class="keyword">auto</span> *val = other.data(); val) {</div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span> <span class="keywordflow">return</span> (vtable(request::transfer, *<span class="keyword">this</span>, val) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> }</div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span> </div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span> <span class="keywordflow">return</span> (vtable(request::assign, *<span class="keyword">this</span>, std::as_const(other).<a class="code hl_function" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">data</a>()) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span> }</div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"> 370</span> </div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"> 372</span> }</div>
</div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"> 373</span></div>
<div class="foldopen" id="foldopen00375" data-start="{" data-end="}">
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6"> 375</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6">reset</a>() {</div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span> <span class="keywordflow">if</span>(<a class="code hl_function" href="classentt_1_1basic__any.html#a4f36479ca4ac3ad94a80fc3ac3eb1a24">owner</a>()) {</div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span> vtable(request::destroy, *<span class="keyword">this</span>, <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span> }</div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span> </div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> instance = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> info = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> vtable = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> mode = <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549aa2e4822a98337283e39f7b60acf85ec9">any_policy::empty</a>;</div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span> }</div>
</div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span></div>
<div class="foldopen" id="foldopen00390" data-start="{" data-end="}">
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a0a4e687230c96ff901b41d16b7fd41f6"> 390</a></span> [[nodiscard]] <span class="keyword">explicit</span> <span class="keyword">operator</span> bool() const noexcept {</div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">return</span> vtable != <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span> }</div>
</div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span></div>
<div class="foldopen" id="foldopen00399" data-start="{" data-end="}">
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ae7b91c6ef21a43af18d8f1657e458461"> 399</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1basic__any.html#ae7b91c6ef21a43af18d8f1657e458461">operator==</a>(<span class="keyword">const</span> basic_any &amp;other) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"> 400</span> <span class="keywordflow">if</span>(vtable &amp;&amp; *info == other.type()) {</div>
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno"> 401</span> <span class="keywordflow">return</span> (vtable(request::compare, *<span class="keyword">this</span>, other.data()) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno"> 402</span> }</div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"> 403</span> </div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span> <span class="keywordflow">return</span> (!vtable &amp;&amp; !other.vtable);</div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span> }</div>
</div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span></div>
<div class="foldopen" id="foldopen00412" data-start="{" data-end="}">
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a749a2855eff737c3ce0882f30bf7ad9a"> 412</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a749a2855eff737c3ce0882f30bf7ad9a">operator!=</a>(<span class="keyword">const</span> basic_any &amp;other) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno"> 413</span> <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == other);</div>
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span> }</div>
</div>
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"> 415</span></div>
<div class="foldopen" id="foldopen00420" data-start="{" data-end="}">
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#aab60eaf9e3395de34c4d46d3ffba9393"> 420</a></span> [[nodiscard]] basic_any <a class="code hl_function" href="classentt_1_1basic__any.html#aab60eaf9e3395de34c4d46d3ffba9393">as_ref</a>() noexcept {</div>
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"> 421</span> <span class="keywordflow">return</span> basic_any{*<span class="keyword">this</span>, (mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> ? <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a> : <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a18389a4a9ad5795744699cff0ba66c15">any_policy::ref</a>)};</div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"> 422</span> }</div>
</div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span></div>
<div class="foldopen" id="foldopen00425" data-start="{" data-end="}">
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#ac0a6730e219bb15d8e4f8f63d270e0d3"> 425</a></span> [[nodiscard]] basic_any <a class="code hl_function" href="classentt_1_1basic__any.html#ac0a6730e219bb15d8e4f8f63d270e0d3">as_ref</a>() const noexcept {</div>
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"> 426</span> <span class="keywordflow">return</span> basic_any{*<span class="keyword">this</span>, <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">any_policy::cref</a>};</div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno"> 427</span> }</div>
</div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"> 428</span></div>
<div class="foldopen" id="foldopen00433" data-start="{" data-end="}">
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#a4f36479ca4ac3ad94a80fc3ac3eb1a24"> 433</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1basic__any.html#a4f36479ca4ac3ad94a80fc3ac3eb1a24">owner</a>() const noexcept {</div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span> <span class="keywordflow">return</span> (mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549ab72f3bd391ba731a35708bfd8cd8a68f">any_policy::dynamic</a> || mode == <a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">any_policy::embedded</a>);</div>
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"> 435</span> }</div>
</div>
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno"> 436</span></div>
<div class="foldopen" id="foldopen00441" data-start="{" data-end="}">
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"><a class="line" href="classentt_1_1basic__any.html#aa596e3cbca62ec101627dcdd82f216b7"> 441</a></span> [[nodiscard]] <a class="code hl_enumeration" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549">any_policy</a> <a class="code hl_function" href="classentt_1_1basic__any.html#aa596e3cbca62ec101627dcdd82f216b7">policy</a>() const noexcept {</div>
<div class="line"><a id="l00442" name="l00442"></a><span class="lineno"> 442</span> <span class="keywordflow">return</span> mode;</div>
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span> }</div>
</div>
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span> </div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"> 446</span> <span class="keyword">union </span>{</div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"> 447</span> <span class="keyword">const</span> <span class="keywordtype">void</span> *instance;</div>
<div class="line"><a id="l00448" name="l00448"></a><span class="lineno"> 448</span> <a class="code hl_struct" href="structentt_1_1storage__type.html">storage_type</a> <a class="code hl_typedef" href="namespaceentt.html#aff8fd99fc1ff2432dcb0f6b017a9c60e">storage</a>;</div>
<div class="line"><a id="l00449" name="l00449"></a><span class="lineno"> 449</span> };</div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"> 450</span> <span class="keyword">const</span> type_info *info{};</div>
<div class="line"><a id="l00451" name="l00451"></a><span class="lineno"> 451</span> vtable_type *vtable{};</div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"> 452</span> <a class="code hl_enumeration" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549">any_policy</a> mode{<a class="code hl_enumvalue" href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549aa2e4822a98337283e39f7b60acf85ec9">any_policy::empty</a>};</div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"> 453</span>};</div>
</div>
<div class="line"><a id="l00454" name="l00454"></a><span class="lineno"> 454</span></div>
<div class="line"><a id="l00463" name="l00463"></a><span class="lineno"> 463</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, std::<span class="keywordtype">size_t</span> Len, std::<span class="keywordtype">size_t</span> Align&gt;</div>
<div class="foldopen" id="foldopen00464" data-start="{" data-end="}">
<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"><a class="line" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc"> 464</a></span>[[nodiscard]] std::remove_const_t&lt;Type&gt; <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast</a>(<span class="keyword">const</span> <a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> &amp;data) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00465" name="l00465"></a><span class="lineno"> 465</span> <span class="keyword">const</span> <span class="keyword">auto</span> *<span class="keyword">const</span> instance = <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast&lt;std::remove_reference_t&lt;Type&gt;</a>&gt;(&amp;data);</div>
<div class="line"><a id="l00466" name="l00466"></a><span class="lineno"> 466</span> ENTT_ASSERT(instance, <span class="stringliteral">&quot;Invalid instance&quot;</span>);</div>
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"> 467</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>Type<span class="keyword">&gt;</span>(*instance);</div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span>}</div>
</div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span></div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, std::<span class="keywordtype">size_t</span> Len, std::<span class="keywordtype">size_t</span> Align&gt;</div>
<div class="foldopen" id="foldopen00472" data-start="{" data-end="}">
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"><a class="line" href="namespaceentt.html#a12027badfdd7739493d9a38a6c3cc913"> 472</a></span>[[nodiscard]] std::remove_const_t&lt;Type&gt; <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast</a>(<a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> &amp;data) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span> <span class="comment">// forces const on non-reference types to make them work also with wrappers for const references</span></div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span> <span class="keyword">auto</span> *<span class="keyword">const</span> instance = <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast&lt;std::remove_reference_t&lt;const Type&gt;</a>&gt;(&amp;data);</div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span> ENTT_ASSERT(instance, <span class="stringliteral">&quot;Invalid instance&quot;</span>);</div>
<div class="line"><a id="l00476" name="l00476"></a><span class="lineno"> 476</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>Type<span class="keyword">&gt;</span>(*instance);</div>
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"> 477</span>}</div>
</div>
<div class="line"><a id="l00478" name="l00478"></a><span class="lineno"> 478</span></div>
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"> 480</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, std::<span class="keywordtype">size_t</span> Len, std::<span class="keywordtype">size_t</span> Align&gt;</div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"> 481</span><span class="comment">// NOLINTNEXTLINE(cppcoreguidelines-rvalue-reference-param-not-moved)</span></div>
<div class="foldopen" id="foldopen00482" data-start="{" data-end="}">
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"><a class="line" href="namespaceentt.html#a12ca839d106a61776fd7f4f1041ae9ee"> 482</a></span>[[nodiscard]] std::remove_const_t&lt;Type&gt; <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast</a>(<a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> &amp;&amp;data) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_copy_constructible_v&lt;std::remove_cv_t&lt;std::remove_reference_t&lt;Type&gt;&gt;&gt;) {</div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span> <span class="keywordflow">if</span>(<span class="keyword">auto</span> *<span class="keyword">const</span> instance = <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast</a>&lt;std::remove_reference_t&lt;Type&gt;&gt;(&amp;data); instance) {</div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>Type<span class="keyword">&gt;</span>(std::move(*instance));</div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"> 486</span> }</div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno"> 487</span> </div>
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno"> 488</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast&lt;Type&gt;</a>(data);</div>
<div class="line"><a id="l00489" name="l00489"></a><span class="lineno"> 489</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00490" name="l00490"></a><span class="lineno"> 490</span> <span class="keyword">auto</span> *<span class="keyword">const</span> instance = <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast&lt;std::remove_reference_t&lt;Type&gt;</a>&gt;(&amp;data);</div>
<div class="line"><a id="l00491" name="l00491"></a><span class="lineno"> 491</span> ENTT_ASSERT(instance, <span class="stringliteral">&quot;Invalid instance&quot;</span>);</div>
<div class="line"><a id="l00492" name="l00492"></a><span class="lineno"> 492</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>Type<span class="keyword">&gt;</span>(std::move(*instance));</div>
<div class="line"><a id="l00493" name="l00493"></a><span class="lineno"> 493</span> }</div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span>}</div>
</div>
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"> 495</span></div>
<div class="line"><a id="l00497" name="l00497"></a><span class="lineno"> 497</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, std::<span class="keywordtype">size_t</span> Len, std::<span class="keywordtype">size_t</span> Align&gt;</div>
<div class="foldopen" id="foldopen00498" data-start="{" data-end="}">
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"><a class="line" href="namespaceentt.html#aaabf666ed024f5542f987b8b5a658f64"> 498</a></span>[[nodiscard]] <span class="keyword">const</span> Type *<a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast</a>(<span class="keyword">const</span> <a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> *data) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00499" name="l00499"></a><span class="lineno"> 499</span> <span class="keyword">const</span> <span class="keyword">auto</span> &amp;info = <a class="code hl_function" href="namespaceentt.html#adb9682d476edbbe4434680363f9c0eb3">type_id&lt;std::remove_cv_t&lt;Type&gt;</a>&gt;();</div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno"> 500</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keyword">const </span>Type *<span class="keyword">&gt;</span>(data-&gt;data(info));</div>
<div class="line"><a id="l00501" name="l00501"></a><span class="lineno"> 501</span>}</div>
</div>
<div class="line"><a id="l00502" name="l00502"></a><span class="lineno"> 502</span></div>
<div class="line"><a id="l00504" name="l00504"></a><span class="lineno"> 504</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, std::<span class="keywordtype">size_t</span> Len, std::<span class="keywordtype">size_t</span> Align&gt;</div>
<div class="foldopen" id="foldopen00505" data-start="{" data-end="}">
<div class="line"><a id="l00505" name="l00505"></a><span class="lineno"><a class="line" href="namespaceentt.html#ae0b7dd1eaac2e05f42febf94331e1ac0"> 505</a></span>[[nodiscard]] Type *<a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast</a>(<a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> *data) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00506" name="l00506"></a><span class="lineno"> 506</span> <span class="keywordflow">if</span> <span class="keyword">constexpr</span>(std::is_const_v&lt;Type&gt;) {</div>
<div class="line"><a id="l00507" name="l00507"></a><span class="lineno"> 507</span> <span class="comment">// last attempt to make wrappers for const references return their values</span></div>
<div class="line"><a id="l00508" name="l00508"></a><span class="lineno"> 508</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">any_cast&lt;Type&gt;</a>(&amp;std::as_const(*data));</div>
<div class="line"><a id="l00509" name="l00509"></a><span class="lineno"> 509</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00510" name="l00510"></a><span class="lineno"> 510</span> <span class="keyword">const</span> <span class="keyword">auto</span> &amp;info = <a class="code hl_function" href="namespaceentt.html#adb9682d476edbbe4434680363f9c0eb3">type_id&lt;std::remove_cv_t&lt;Type&gt;</a>&gt;();</div>
<div class="line"><a id="l00511" name="l00511"></a><span class="lineno"> 511</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>Type *<span class="keyword">&gt;</span>(data-&gt;data(info));</div>
<div class="line"><a id="l00512" name="l00512"></a><span class="lineno"> 512</span> }</div>
<div class="line"><a id="l00513" name="l00513"></a><span class="lineno"> 513</span>}</div>
</div>
<div class="line"><a id="l00514" name="l00514"></a><span class="lineno"> 514</span></div>
<div class="line"><a id="l00524" name="l00524"></a><span class="lineno"> 524</span>template&lt;typename Type, std::size_t Len = basic_any&lt;&gt;::length, std::size_t Align = <a class="code hl_variable" href="classentt_1_1basic__any.html#a8248e8443c6208077db312079a05fd96">basic_any&lt;Len&gt;::alignment</a>, <span class="keyword">typename</span>... Args&gt;</div>
<div class="foldopen" id="foldopen00525" data-start="{" data-end="}">
<div class="line"><a id="l00525" name="l00525"></a><span class="lineno"><a class="line" href="namespaceentt.html#adb86dc3145589485c094960a089eb953"> 525</a></span>[[nodiscard]] <a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> <a class="code hl_function" href="namespaceentt.html#adb86dc3145589485c094960a089eb953">make_any</a>(Args &amp;&amp;...args) {</div>
<div class="line"><a id="l00526" name="l00526"></a><span class="lineno"> 526</span> <span class="keywordflow">return</span> <a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a>{std::in_place_type&lt;Type&gt;, std::forward&lt;Args&gt;(args)...};</div>
<div class="line"><a id="l00527" name="l00527"></a><span class="lineno"> 527</span>}</div>
</div>
<div class="line"><a id="l00528" name="l00528"></a><span class="lineno"> 528</span></div>
<div class="line"><a id="l00537" name="l00537"></a><span class="lineno"> 537</span>template&lt;std::size_t Len = basic_any&lt;&gt;::length, std::size_t Align = <a class="code hl_variable" href="classentt_1_1basic__any.html#a8248e8443c6208077db312079a05fd96">basic_any&lt;Len&gt;::alignment</a>, <span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00538" data-start="{" data-end="}">
<div class="line"><a id="l00538" name="l00538"></a><span class="lineno"><a class="line" href="namespaceentt.html#af02fa96c663a6706416e47a3a6658328"> 538</a></span>[[nodiscard]] <a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a> <a class="code hl_function" href="namespaceentt.html#af02fa96c663a6706416e47a3a6658328">forward_as_any</a>(Type &amp;&amp;value) {</div>
<div class="line"><a id="l00539" name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">return</span> <a class="code hl_class" href="classentt_1_1basic__any.html">basic_any&lt;Len, Align&gt;</a>{std::in_place_type&lt;Type &amp;&amp;&gt;, std::forward&lt;Type&gt;(value)};</div>
<div class="line"><a id="l00540" name="l00540"></a><span class="lineno"> 540</span>}</div>
</div>
<div class="line"><a id="l00541" name="l00541"></a><span class="lineno"> 541</span> </div>
<div class="line"><a id="l00542" name="l00542"></a><span class="lineno"> 542</span>} <span class="comment">// namespace entt</span></div>
<div class="line"><a id="l00543" name="l00543"></a><span class="lineno"> 543</span> </div>
<div class="line"><a id="l00544" name="l00544"></a><span class="lineno"> 544</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassentt_1_1basic__any_html"><div class="ttname"><a href="classentt_1_1basic__any.html">entt::basic_any</a></div><div class="ttdoc">A SBO friendly, type-safe container for single values of any type.</div><div class="ttdef"><b>Definition</b> <a href="#l00038">any.hpp:38</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a0f267d3bbc148e7e240b902b1819c9a6"><div class="ttname"><a href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6">entt::basic_any::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdoc">Destroys contained object.</div><div class="ttdef"><b>Definition</b> <a href="#l00375">any.hpp:375</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a164cd19f4369e7c010f4581971ae2c9c"><div class="ttname"><a href="classentt_1_1basic__any.html#a164cd19f4369e7c010f4581971ae2c9c">entt::basic_any::basic_any</a></div><div class="ttdeci">constexpr basic_any() noexcept</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00165">any.hpp:165</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a3196700b32252e5b59a79994b907afda"><div class="ttname"><a href="classentt_1_1basic__any.html#a3196700b32252e5b59a79994b907afda">entt::basic_any::basic_any</a></div><div class="ttdeci">basic_any(const basic_any &amp;other)</div><div class="ttdoc">Copy constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00209">any.hpp:209</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a3a84c837c69ab23b08a535ab79f7eefa"><div class="ttname"><a href="classentt_1_1basic__any.html#a3a84c837c69ab23b08a535ab79f7eefa">entt::basic_any::basic_any</a></div><div class="ttdeci">basic_any(std::in_place_type_t&lt; Type &gt;, Args &amp;&amp;...args)</div><div class="ttdoc">Constructs a wrapper by directly initializing the new object.</div><div class="ttdef"><b>Definition</b> <a href="#l00175">any.hpp:175</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a43d097fa91670846621ec23995bc80f3"><div class="ttname"><a href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">entt::basic_any::data</a></div><div class="ttdeci">const void * data() const noexcept</div><div class="ttdoc">Returns an opaque pointer to the contained instance.</div><div class="ttdef"><b>Definition</b> <a href="#l00305">any.hpp:305</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a4f36479ca4ac3ad94a80fc3ac3eb1a24"><div class="ttname"><a href="classentt_1_1basic__any.html#a4f36479ca4ac3ad94a80fc3ac3eb1a24">entt::basic_any::owner</a></div><div class="ttdeci">bool owner() const noexcept</div><div class="ttdoc">Returns true if a wrapper owns its object, false otherwise.</div><div class="ttdef"><b>Definition</b> <a href="#l00433">any.hpp:433</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a4fc7178c09a4c7fc57891183800d1688"><div class="ttname"><a href="classentt_1_1basic__any.html#a4fc7178c09a4c7fc57891183800d1688">entt::basic_any::assign</a></div><div class="ttdeci">bool assign(const basic_any &amp;other)</div><div class="ttdoc">Assigns a value to the contained object without replacing it.</div><div class="ttdef"><b>Definition</b> <a href="#l00352">any.hpp:352</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a5765d9d4bcc5098791f3e84d4f92288f"><div class="ttname"><a href="classentt_1_1basic__any.html#a5765d9d4bcc5098791f3e84d4f92288f">entt::basic_any::assign</a></div><div class="ttdeci">bool assign(basic_any &amp;&amp;other)</div><div class="ttdoc">Assigns a value to the contained object without replacing it.</div><div class="ttdef"><b>Definition</b> <a href="#l00362">any.hpp:362</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a5fbc1fb99c934c59524af552ae2a33c3"><div class="ttname"><a href="classentt_1_1basic__any.html#a5fbc1fb99c934c59524af552ae2a33c3">entt::basic_any&lt;&gt;::length</a></div><div class="ttdeci">static constexpr auto length</div><div class="ttdef"><b>Definition</b> <a href="#l00160">any.hpp:160</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a612abee6a4ebf016df27929668839fc0"><div class="ttname"><a href="classentt_1_1basic__any.html#a612abee6a4ebf016df27929668839fc0">entt::basic_any&lt;&gt;::emplace</a></div><div class="ttdeci">void emplace(Args &amp;&amp;...args)</div><div class="ttdef"><b>Definition</b> <a href="#l00342">any.hpp:342</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a63c48ddb1677383ba12752ffa387139b"><div class="ttname"><a href="classentt_1_1basic__any.html#a63c48ddb1677383ba12752ffa387139b">entt::basic_any::type</a></div><div class="ttdeci">const type_info &amp; type() const noexcept</div><div class="ttdoc">Returns the object type if any, type_id&lt;void&gt;() otherwise.</div><div class="ttdef"><b>Definition</b> <a href="#l00297">any.hpp:297</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a749a2855eff737c3ce0882f30bf7ad9a"><div class="ttname"><a href="classentt_1_1basic__any.html#a749a2855eff737c3ce0882f30bf7ad9a">entt::basic_any::operator!=</a></div><div class="ttdeci">bool operator!=(const basic_any &amp;other) const noexcept</div><div class="ttdoc">Checks if two wrappers differ in their content.</div><div class="ttdef"><b>Definition</b> <a href="#l00412">any.hpp:412</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_a8248e8443c6208077db312079a05fd96"><div class="ttname"><a href="classentt_1_1basic__any.html#a8248e8443c6208077db312079a05fd96">entt::basic_any&lt;&gt;::alignment</a></div><div class="ttdeci">static constexpr auto alignment</div><div class="ttdef"><b>Definition</b> <a href="#l00162">any.hpp:162</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_aa335df93ca9c2ba89efd9664f9e66609"><div class="ttname"><a href="classentt_1_1basic__any.html#aa335df93ca9c2ba89efd9664f9e66609">entt::basic_any::basic_any</a></div><div class="ttdeci">basic_any(basic_any &amp;&amp;other) noexcept</div><div class="ttdoc">Move constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00220">any.hpp:220</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_aa596e3cbca62ec101627dcdd82f216b7"><div class="ttname"><a href="classentt_1_1basic__any.html#aa596e3cbca62ec101627dcdd82f216b7">entt::basic_any::policy</a></div><div class="ttdeci">any_policy policy() const noexcept</div><div class="ttdoc">Returns the current mode of an any object.</div><div class="ttdef"><b>Definition</b> <a href="#l00441">any.hpp:441</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_aa73a486cc548eb0625807c6e4c43fe8c"><div class="ttname"><a href="classentt_1_1basic__any.html#aa73a486cc548eb0625807c6e4c43fe8c">entt::basic_any::basic_any</a></div><div class="ttdeci">basic_any(std::in_place_t, Type *value)</div><div class="ttdoc">Constructs a wrapper taking ownership of the passed object.</div><div class="ttdef"><b>Definition</b> <a href="#l00186">any.hpp:186</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_aab60eaf9e3395de34c4d46d3ffba9393"><div class="ttname"><a href="classentt_1_1basic__any.html#aab60eaf9e3395de34c4d46d3ffba9393">entt::basic_any::as_ref</a></div><div class="ttdeci">basic_any as_ref() noexcept</div><div class="ttdoc">Aliasing constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00420">any.hpp:420</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ab103382955f577cd8a714c7b5b89d9c6"><div class="ttname"><a href="classentt_1_1basic__any.html#ab103382955f577cd8a714c7b5b89d9c6">entt::basic_any::~basic_any</a></div><div class="ttdeci">~basic_any()</div><div class="ttdoc">Frees the internal storage, whatever it means.</div><div class="ttdef"><b>Definition</b> <a href="#l00233">any.hpp:233</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ab3f60cd57d55ff657927371cf06c2325"><div class="ttname"><a href="classentt_1_1basic__any.html#ab3f60cd57d55ff657927371cf06c2325">entt::basic_any::operator=</a></div><div class="ttdeci">basic_any &amp; operator=(const basic_any &amp;other)</div><div class="ttdoc">Copy assignment operator.</div><div class="ttdef"><b>Definition</b> <a href="#l00244">any.hpp:244</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ab90a391cc904cb9b68be91b36dd2155e"><div class="ttname"><a href="classentt_1_1basic__any.html#ab90a391cc904cb9b68be91b36dd2155e">entt::basic_any::data</a></div><div class="ttdeci">void * data(const type_info &amp;req) noexcept</div><div class="ttdoc">Returns an opaque pointer to the contained instance.</div><div class="ttdef"><b>Definition</b> <a href="#l00331">any.hpp:331</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ac0a6730e219bb15d8e4f8f63d270e0d3"><div class="ttname"><a href="classentt_1_1basic__any.html#ac0a6730e219bb15d8e4f8f63d270e0d3">entt::basic_any::as_ref</a></div><div class="ttdeci">basic_any as_ref() const noexcept</div><div class="ttdoc">Aliasing constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00425">any.hpp:425</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ac54b5130a6ceee1cc396290e7701a7c3"><div class="ttname"><a href="classentt_1_1basic__any.html#ac54b5130a6ceee1cc396290e7701a7c3">entt::basic_any::operator=</a></div><div class="ttdeci">basic_any &amp; operator=(Type &amp;&amp;value)</div><div class="ttdoc">Value assignment operator.</div><div class="ttdef"><b>Definition</b> <a href="#l00288">any.hpp:288</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ace596f46c6bb613430b9f7ee5e4b3d01"><div class="ttname"><a href="classentt_1_1basic__any.html#ace596f46c6bb613430b9f7ee5e4b3d01">entt::basic_any::operator=</a></div><div class="ttdeci">basic_any &amp; operator=(basic_any &amp;&amp;other) noexcept</div><div class="ttdoc">Move assignment operator.</div><div class="ttdef"><b>Definition</b> <a href="#l00265">any.hpp:265</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_ae7b91c6ef21a43af18d8f1657e458461"><div class="ttname"><a href="classentt_1_1basic__any.html#ae7b91c6ef21a43af18d8f1657e458461">entt::basic_any::operator==</a></div><div class="ttdeci">bool operator==(const basic_any &amp;other) const noexcept</div><div class="ttdoc">Checks if two wrappers differ in their content.</div><div class="ttdef"><b>Definition</b> <a href="#l00399">any.hpp:399</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_af8f31671bcdb27166a7614a795680ef6"><div class="ttname"><a href="classentt_1_1basic__any.html#af8f31671bcdb27166a7614a795680ef6">entt::basic_any::data</a></div><div class="ttdeci">void * data() noexcept</div><div class="ttdoc">Returns an opaque pointer to the contained instance.</div><div class="ttdef"><b>Definition</b> <a href="#l00322">any.hpp:322</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_afb1d00c509ae9127faa1cc2a5887bdab"><div class="ttname"><a href="classentt_1_1basic__any.html#afb1d00c509ae9127faa1cc2a5887bdab">entt::basic_any::basic_any</a></div><div class="ttdeci">basic_any(Type &amp;&amp;value)</div><div class="ttdoc">Constructs a wrapper from a given value.</div><div class="ttdef"><b>Definition</b> <a href="#l00202">any.hpp:202</a></div></div>
<div class="ttc" id="aclassentt_1_1basic__any_html_afce19133c0447cf4abfb1eea3f812959"><div class="ttname"><a href="classentt_1_1basic__any.html#afce19133c0447cf4abfb1eea3f812959">entt::basic_any::data</a></div><div class="ttdeci">const void * data(const type_info &amp;req) const noexcept</div><div class="ttdoc">Returns an opaque pointer to the contained instance.</div><div class="ttdef"><b>Definition</b> <a href="#l00314">any.hpp:314</a></div></div>
<div class="ttc" id="anamespaceentt_html"><div class="ttname"><a href="namespaceentt.html">entt</a></div><div class="ttdoc">EnTT default namespace.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00022">dense_map.hpp:22</a></div></div>
<div class="ttc" id="anamespaceentt_html_a068dd98a70c771935d2bf3dd96dbad6d"><div class="ttname"><a href="namespaceentt.html#a068dd98a70c771935d2bf3dd96dbad6d">entt::is_equality_comparable_v</a></div><div class="ttdeci">constexpr bool is_equality_comparable_v</div><div class="ttdoc">Helper variable template.</div><div class="ttdef"><b>Definition</b> <a href="core_2type__traits_8hpp_source.html#l00815">type_traits.hpp:815</a></div></div>
<div class="ttc" id="anamespaceentt_html_a4ce71953bc9fb5283641465fb40025dc"><div class="ttname"><a href="namespaceentt.html#a4ce71953bc9fb5283641465fb40025dc">entt::any_cast</a></div><div class="ttdeci">std::remove_const_t&lt; Type &gt; any_cast(const basic_any&lt; Len, Align &gt; &amp;data) noexcept</div><div class="ttdoc">Performs type-safe access to the contained object.</div><div class="ttdef"><b>Definition</b> <a href="#l00464">any.hpp:464</a></div></div>
<div class="ttc" id="anamespaceentt_html_a8c24ecc5ab0055f9f2a4725c95afb29e"><div class="ttname"><a href="namespaceentt.html#a8c24ecc5ab0055f9f2a4725c95afb29e">entt::get</a></div><div class="ttdeci">constexpr get_t&lt; Type... &gt; get</div><div class="ttdoc">Variable template for lists of observed elements.</div><div class="ttdef"><b>Definition</b> <a href="entity_2fwd_8hpp_source.html#l00167">fwd.hpp:167</a></div></div>
<div class="ttc" id="anamespaceentt_html_adb86dc3145589485c094960a089eb953"><div class="ttname"><a href="namespaceentt.html#adb86dc3145589485c094960a089eb953">entt::make_any</a></div><div class="ttdeci">basic_any&lt; Len, Align &gt; make_any(Args &amp;&amp;...args)</div><div class="ttdoc">Constructs a wrapper from a given type, passing it all arguments.</div><div class="ttdef"><b>Definition</b> <a href="#l00525">any.hpp:525</a></div></div>
<div class="ttc" id="anamespaceentt_html_adb9682d476edbbe4434680363f9c0eb3"><div class="ttname"><a href="namespaceentt.html#adb9682d476edbbe4434680363f9c0eb3">entt::type_id</a></div><div class="ttdeci">const type_info &amp; type_id() noexcept</div><div class="ttdoc">Returns the type info object associated to a given type.</div><div class="ttdef"><b>Definition</b> <a href="type__info_8hpp_source.html#l00251">type_info.hpp:251</a></div></div>
<div class="ttc" id="anamespaceentt_html_add777bc22ff30abfbf52abd37d4e1549"><div class="ttname"><a href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549">entt::any_policy</a></div><div class="ttdeci">any_policy</div><div class="ttdoc">Possible modes of an any object.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00011">fwd.hpp:11</a></div></div>
<div class="ttc" id="anamespaceentt_html_add777bc22ff30abfbf52abd37d4e1549a18389a4a9ad5795744699cff0ba66c15"><div class="ttname"><a href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a18389a4a9ad5795744699cff0ba66c15">entt::any_policy::ref</a></div><div class="ttdeci">@ ref</div><div class="ttdoc">Aliasing mode, the object points to a non-const element.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00019">fwd.hpp:19</a></div></div>
<div class="ttc" id="anamespaceentt_html_add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2"><div class="ttname"><a href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a1e67f2ff0161fbaf51eccefa9abc6ad2">entt::any_policy::cref</a></div><div class="ttdeci">@ cref</div><div class="ttdoc">Const aliasing mode, the object points to a const element.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00021">fwd.hpp:21</a></div></div>
<div class="ttc" id="anamespaceentt_html_add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756"><div class="ttname"><a href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549a605abe26d014c72e3df9deb267e73756">entt::any_policy::embedded</a></div><div class="ttdeci">@ embedded</div><div class="ttdoc">Owning mode, the object owns an embedded element.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00017">fwd.hpp:17</a></div></div>
<div class="ttc" id="anamespaceentt_html_add777bc22ff30abfbf52abd37d4e1549aa2e4822a98337283e39f7b60acf85ec9"><div class="ttname"><a href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549aa2e4822a98337283e39f7b60acf85ec9">entt::any_policy::empty</a></div><div class="ttdeci">@ empty</div><div class="ttdoc">Default mode, the object does not own any elements.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00013">fwd.hpp:13</a></div></div>
<div class="ttc" id="anamespaceentt_html_add777bc22ff30abfbf52abd37d4e1549ab72f3bd391ba731a35708bfd8cd8a68f"><div class="ttname"><a href="namespaceentt.html#add777bc22ff30abfbf52abd37d4e1549ab72f3bd391ba731a35708bfd8cd8a68f">entt::any_policy::dynamic</a></div><div class="ttdeci">@ dynamic</div><div class="ttdoc">Owning mode, the object owns a dynamically allocated element.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00015">fwd.hpp:15</a></div></div>
<div class="ttc" id="anamespaceentt_html_af02fa96c663a6706416e47a3a6658328"><div class="ttname"><a href="namespaceentt.html#af02fa96c663a6706416e47a3a6658328">entt::forward_as_any</a></div><div class="ttdeci">basic_any&lt; Len, Align &gt; forward_as_any(Type &amp;&amp;value)</div><div class="ttdoc">Forwards its argument and avoids copies for lvalue references.</div><div class="ttdef"><b>Definition</b> <a href="#l00538">any.hpp:538</a></div></div>
<div class="ttc" id="anamespaceentt_html_aff8fd99fc1ff2432dcb0f6b017a9c60e"><div class="ttname"><a href="namespaceentt.html#aff8fd99fc1ff2432dcb0f6b017a9c60e">entt::storage</a></div><div class="ttdeci">basic_storage&lt; Type &gt; storage</div><div class="ttdoc">Alias declaration for the most common use case.</div><div class="ttdef"><b>Definition</b> <a href="entity_2fwd_8hpp_source.html#l00078">fwd.hpp:78</a></div></div>
<div class="ttc" id="astructentt_1_1storage__type_html"><div class="ttname"><a href="structentt_1_1storage__type.html">entt::storage_type</a></div><div class="ttdoc">Provides a common way to define storage types.</div><div class="ttdef"><b>Definition</b> <a href="entity_2fwd_8hpp_source.html#l00226">fwd.hpp:226</a></div></div>
<div class="ttc" id="astructentt_1_1type__info_html"><div class="ttname"><a href="structentt_1_1type__info.html">entt::type_info</a></div><div class="ttdoc">Implementation specific information about a type.</div><div class="ttdef"><b>Definition</b> <a href="type__info_8hpp_source.html#l00133">type_info.hpp:133</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+131
View File
@@ -0,0 +1,131 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/core/attribute.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_de8f4e6ba3f54a2a21309f742e93a373.html">core</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">attribute.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_CORE_ATTRIBUTE_H</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_CORE_ATTRIBUTE_H</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#ifndef ENTT_EXPORT</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor"># if defined _WIN32 || defined __CYGWIN__ || defined _MSC_VER</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor"># define ENTT_EXPORT __declspec(dllexport)</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor"># define ENTT_IMPORT __declspec(dllimport)</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor"># define ENTT_HIDDEN</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor"># elif defined __GNUC__ &amp;&amp; __GNUC__ &gt;= 4</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor"># define ENTT_EXPORT __attribute__((visibility(&quot;default&quot;)))</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor"># define ENTT_IMPORT __attribute__((visibility(&quot;default&quot;)))</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor"># define ENTT_HIDDEN __attribute__((visibility(&quot;hidden&quot;)))</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor"># else </span><span class="comment">/* Unsupported compiler */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor"># define ENTT_EXPORT</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor"># define ENTT_IMPORT</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor"># define ENTT_HIDDEN</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor"># endif</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#ifndef ENTT_API</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor"># if defined ENTT_API_EXPORT</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor"># define ENTT_API ENTT_EXPORT</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="preprocessor"># elif defined ENTT_API_IMPORT</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="preprocessor"># define ENTT_API ENTT_IMPORT</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="preprocessor"># else </span><span class="comment">/* No API */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="preprocessor"># define ENTT_API</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="preprocessor"># endif</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
View File
-13
View File
@@ -1,13 +0,0 @@
load("@bazel_skylib//lib:selects.bzl", "selects")
COPTS = selects.with_or({
("//conditions:default", "@rules_cc//cc/compiler:clang", "@rules_cc//cc/compiler:gcc", "@rules_cc//cc/compiler:mingw-gcc"): [
"-std=c++17",
"-w",
],
("@rules_cc//cc/compiler:msvc-cl", "@rules_cc//cc/compiler:clang-cl"): [
"/std:c++17",
"/permissive-",
"/w",
],
})
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 676 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 635 B

+156
View File
@@ -0,0 +1,156 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/core/bit.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_de8f4e6ba3f54a2a21309f742e93a373.html">core</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">bit.hpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_CORE_BIT_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_CORE_BIT_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;cstddef&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;limits&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;type_traits&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;../config/config.h&quot;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceentt.html">entt</a> {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00019" data-start="{" data-end="}">
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="namespaceentt.html#afab136c473d8c862b183cec9d4a13915"> 19</a></span>[[nodiscard]] <span class="keyword">constexpr</span> std::enable_if_t&lt;std::is_unsigned_v&lt;Type&gt;, <span class="keywordtype">int</span>&gt; <a class="code hl_function" href="namespaceentt.html#afab136c473d8c862b183cec9d4a13915">popcount</a>(<span class="keyword">const</span> Type value) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">return</span> value ? (int(value &amp; 1) + <a class="code hl_function" href="namespaceentt.html#afab136c473d8c862b183cec9d4a13915">popcount</a>(<span class="keyword">static_cast&lt;</span>Type<span class="keyword">&gt;</span>(value &gt;&gt; 1))) : 0;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>}</div>
</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00031" data-start="{" data-end="}">
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="namespaceentt.html#a1c0d94baafb4291b7dc5a49ba6f1b0e5"> 31</a></span>[[nodiscard]] <span class="keyword">constexpr</span> std::enable_if_t&lt;std::is_unsigned_v&lt;Type&gt;, <span class="keywordtype">bool</span>&gt; <a class="code hl_function" href="namespaceentt.html#a1c0d94baafb4291b7dc5a49ba6f1b0e5">has_single_bit</a>(<span class="keyword">const</span> Type value) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">return</span> value &amp;&amp; ((value &amp; (value - 1)) == 0);</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>}</div>
</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00043" data-start="{" data-end="}">
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="namespaceentt.html#a8f6fb41a1c8c0c5968bfca369e51a73e"> 43</a></span>[[nodiscard]] <span class="keyword">constexpr</span> std::enable_if_t&lt;std::is_unsigned_v&lt;Type&gt;, Type&gt; <a class="code hl_function" href="namespaceentt.html#a8f6fb41a1c8c0c5968bfca369e51a73e">next_power_of_two</a>(<span class="keyword">const</span> Type value) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="comment">// NOLINTNEXTLINE(bugprone-assert-side-effect)</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> ENTT_ASSERT_CONSTEXPR(value &lt; (Type{1u} &lt;&lt; (std::numeric_limits&lt;Type&gt;::digits - 1)), <span class="stringliteral">&quot;Numeric limits exceeded&quot;</span>);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> Type curr = value - (value != 0u);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">for</span>(<span class="keywordtype">int</span> next = 1; next &lt; std::numeric_limits&lt;Type&gt;::digits; next = next * 2) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> curr |= (curr &gt;&gt; next);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> }</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">return</span> ++curr;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>}</div>
</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type&gt;</div>
<div class="foldopen" id="foldopen00063" data-start="{" data-end="}">
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="namespaceentt.html#a1ae98eeee0b0cb3e94d97d08a74a06f0"> 63</a></span>[[nodiscard]] <span class="keyword">constexpr</span> std::enable_if_t&lt;std::is_unsigned_v&lt;Type&gt;, Type&gt; <a class="code hl_function" href="namespaceentt.html#a1ae98eeee0b0cb3e94d97d08a74a06f0">fast_mod</a>(<span class="keyword">const</span> Type value, <span class="keyword">const</span> std::size_t mod) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> ENTT_ASSERT_CONSTEXPR(<a class="code hl_function" href="namespaceentt.html#a1c0d94baafb4291b7dc5a49ba6f1b0e5">has_single_bit</a>(mod), <span class="stringliteral">&quot;Value must be a power of two&quot;</span>);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>Type<span class="keyword">&gt;</span>(value &amp; (mod - 1u));</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>} <span class="comment">// namespace entt</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="anamespaceentt_html"><div class="ttname"><a href="namespaceentt.html">entt</a></div><div class="ttdoc">EnTT default namespace.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00022">dense_map.hpp:22</a></div></div>
<div class="ttc" id="anamespaceentt_html_a1ae98eeee0b0cb3e94d97d08a74a06f0"><div class="ttname"><a href="namespaceentt.html#a1ae98eeee0b0cb3e94d97d08a74a06f0">entt::fast_mod</a></div><div class="ttdeci">constexpr std::enable_if_t&lt; std::is_unsigned_v&lt; Type &gt;, Type &gt; fast_mod(const Type value, const std::size_t mod) noexcept</div><div class="ttdoc">Fast module utility function (powers of two only).</div><div class="ttdef"><b>Definition</b> <a href="#l00063">bit.hpp:63</a></div></div>
<div class="ttc" id="anamespaceentt_html_a1c0d94baafb4291b7dc5a49ba6f1b0e5"><div class="ttname"><a href="namespaceentt.html#a1c0d94baafb4291b7dc5a49ba6f1b0e5">entt::has_single_bit</a></div><div class="ttdeci">constexpr std::enable_if_t&lt; std::is_unsigned_v&lt; Type &gt;, bool &gt; has_single_bit(const Type value) noexcept</div><div class="ttdoc">Checks whether a value is a power of two or not (waiting for C++20 and std::has_single_bit).</div><div class="ttdef"><b>Definition</b> <a href="#l00031">bit.hpp:31</a></div></div>
<div class="ttc" id="anamespaceentt_html_a8f6fb41a1c8c0c5968bfca369e51a73e"><div class="ttname"><a href="namespaceentt.html#a8f6fb41a1c8c0c5968bfca369e51a73e">entt::next_power_of_two</a></div><div class="ttdeci">constexpr std::enable_if_t&lt; std::is_unsigned_v&lt; Type &gt;, Type &gt; next_power_of_two(const Type value) noexcept</div><div class="ttdoc">Computes the smallest power of two greater than or equal to a value (waiting for C++20 and std::bit_c...</div><div class="ttdef"><b>Definition</b> <a href="#l00043">bit.hpp:43</a></div></div>
<div class="ttc" id="anamespaceentt_html_afab136c473d8c862b183cec9d4a13915"><div class="ttname"><a href="namespaceentt.html#afab136c473d8c862b183cec9d4a13915">entt::popcount</a></div><div class="ttdeci">constexpr std::enable_if_t&lt; std::is_unsigned_v&lt; Type &gt;, int &gt; popcount(const Type value) noexcept</div><div class="ttdoc">Returns the number of set bits in a value (waiting for C++20 and std::popcount).</div><div class="ttdef"><b>Definition</b> <a href="#l00019">bit.hpp:19</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
-2
View File
@@ -1,2 +0,0 @@
*
!.gitignore
+479
View File
@@ -0,0 +1,479 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: src/entt/resource/cache.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_66e9674e8206a335795995fa32a03c91.html">entt</a></li><li class="navelem"><a class="el" href="dir_85dbee8884f1b3a817fa7eff8dff73ec.html">resource</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">cache.hpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ENTT_RESOURCE_RESOURCE_CACHE_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ENTT_RESOURCE_RESOURCE_CACHE_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;cstddef&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;functional&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;iterator&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;tuple&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;type_traits&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;utility&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;../container/dense_map.hpp&quot;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;../core/compressed_pair.hpp&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &quot;../core/fwd.hpp&quot;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &quot;../core/iterator.hpp&quot;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &quot;../core/utility.hpp&quot;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &quot;fwd.hpp&quot;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &quot;loader.hpp&quot;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &quot;resource.hpp&quot;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceentt.html">entt</a> {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="keyword">namespace </span>internal {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span> It&gt;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keyword">class </span>resource_cache_iterator final {</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span>, <span class="keyword">typename</span>&gt;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">friend</span> <span class="keyword">class </span>resource_cache_iterator;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">using </span>value_type = std::pair&lt;id_type, resource&lt;Type&gt;&gt;;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">using </span>pointer = input_iterator_pointer&lt;value_type&gt;;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">using </span>reference = value_type;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">using </span>difference_type = std::ptrdiff_t;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">using </span>iterator_category = std::input_iterator_tag;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">using </span>iterator_concept = std::random_access_iterator_tag;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">constexpr</span> resource_cache_iterator() noexcept = default;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> constexpr resource_cache_iterator(const It iter) noexcept</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> : it{iter} {}</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span> Other, <span class="keyword">typename</span> = std::enable_if_t&lt;!std::is_same_v&lt;It, Other&gt; &amp;&amp; std::is_constructible_v&lt;It, Other&gt;&gt;&gt;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">constexpr</span> resource_cache_iterator(<span class="keyword">const</span> resource_cache_iterator&lt;std::remove_const_t&lt;Type&gt;, Other&gt; &amp;other) noexcept</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> : it{other.it} {}</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">constexpr</span> resource_cache_iterator &amp;operator++() noexcept {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">return</span> ++it, *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> }</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">constexpr</span> resource_cache_iterator operator++(<span class="keywordtype">int</span>) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keyword">const</span> resource_cache_iterator orig = *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">return</span> ++(*this), orig;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> }</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keyword">constexpr</span> resource_cache_iterator &amp;operator--() noexcept {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> --it, *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> }</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">constexpr</span> resource_cache_iterator operator--(<span class="keywordtype">int</span>) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">const</span> resource_cache_iterator orig = *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">return</span> operator--(), orig;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> }</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">constexpr</span> resource_cache_iterator &amp;operator+=(<span class="keyword">const</span> difference_type value) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> it += value;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keyword">constexpr</span> resource_cache_iterator <a class="code hl_function" href="namespaceentt.html#ab36ceb26049f62c07817a385e35395f6">operator+</a>(<span class="keyword">const</span> difference_type value) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> resource_cache_iterator copy = *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">return</span> (copy += value);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> }</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keyword">constexpr</span> resource_cache_iterator &amp;operator-=(<span class="keyword">const</span> difference_type value) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">return</span> (*<span class="keyword">this</span> += -value);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> }</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keyword">constexpr</span> resource_cache_iterator operator-(<span class="keyword">const</span> difference_type value) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">return</span> (*<span class="keyword">this</span> + -value);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> }</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> [[nodiscard]] <span class="keyword">constexpr</span> reference operator[](<span class="keyword">const</span> difference_type value) <span class="keyword">const</span> <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> {it[value].first, resource&lt;Type&gt;{it[value].second}};</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> }</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> [[nodiscard]] <span class="keyword">constexpr</span> reference operator*() const noexcept {</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">return</span> operator[](0);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> }</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> [[nodiscard]] <span class="keyword">constexpr</span> pointer operator-&gt;() const noexcept {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">return</span> operator*();</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> }</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keyword">friend</span> <span class="keyword">constexpr</span> std::ptrdiff_t operator-(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;) <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keyword">friend</span> <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#af7c61951b721a1e3612cf536bd707501">operator==</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;) <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> </div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keyword">friend</span> <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#aa88e297d57dd5547afcde8dd291c4b8f">operator&lt;</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;) <span class="keyword">noexcept</span>;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> It it;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span>};</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span>[[nodiscard]] <span class="keyword">constexpr</span> std::ptrdiff_t operator-(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">return</span> lhs.it - rhs.it;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span>}</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#af7c61951b721a1e3612cf536bd707501">operator==</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">return</span> lhs.it == rhs.it;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span>}</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#ad9accc71a383509ada028f7fa2b767bf">operator!=</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">return</span> !(lhs == rhs);</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span>}</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#aa88e297d57dd5547afcde8dd291c4b8f">operator&lt;</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">return</span> lhs.it &lt; rhs.it;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span>}</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#aec8131af000055ceab85646c14f234ad">operator&gt;</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">return</span> rhs &lt; lhs;</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span>}</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#a8c763e890bb00479a6a6aeae3b2a75f0">operator&lt;=</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">return</span> !(lhs &gt; rhs);</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span>}</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> </div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Lhs, <span class="keyword">typename</span>... Rhs&gt;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span>[[nodiscard]] <span class="keyword">constexpr</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceentt.html#adadb88dfb4278df554e7ffec5361ece4">operator&gt;=</a>(<span class="keyword">const</span> resource_cache_iterator&lt;Lhs...&gt; &amp;lhs, <span class="keyword">const</span> resource_cache_iterator&lt;Rhs...&gt; &amp;rhs) <span class="keyword">noexcept</span> {</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">return</span> !(lhs &lt; rhs);</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span>}</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span>} <span class="comment">// namespace internal</span></div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span></div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> Type, <span class="keyword">typename</span> Loader, <span class="keyword">typename</span> Allocator&gt;</div>
<div class="foldopen" id="foldopen00153" data-start="{" data-end="};">
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html"> 153</a></span><span class="keyword">class </span><a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> {</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keyword">using </span>alloc_traits = std::allocator_traits&lt;Allocator&gt;;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keyword">static_assert</span>(std::is_same_v&lt;typename alloc_traits::value_type, Type&gt;, <span class="stringliteral">&quot;Invalid value type&quot;</span>);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keyword">using </span>container_allocator = <span class="keyword">typename</span> alloc_traits::template rebind_alloc&lt;std::pair&lt;const id_type, typename Loader::result_type&gt;&gt;;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keyword">using </span>container_type = <a class="code hl_class" href="classentt_1_1dense__map.html">dense_map&lt;id_type, typename Loader::result_type, identity, std::equal_to&lt;&gt;</a>, container_allocator&gt;;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd"> 161</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a> = Allocator;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a7405d91504b5793f260a93695f6cdee4"> 163</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1resource__cache.html#a7405d91504b5793f260a93695f6cdee4">value_type</a> = Type;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#af96dd3b16bdd0f1151b75786bdc0a2cb"> 165</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1resource__cache.html#af96dd3b16bdd0f1151b75786bdc0a2cb">size_type</a> = std::size_t;</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982"> 167</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982">loader_type</a> = Loader;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353"> 169</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353">iterator</a> = internal::resource_cache_iterator&lt;Type, typename container_type::iterator&gt;;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693"> 171</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> = internal::resource_cache_iterator&lt;const Type, typename container_type::const_iterator&gt;;</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span></div>
<div class="foldopen" id="foldopen00174" data-start="{" data-end="}">
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5"> 174</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a>()</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> : <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a>{<a class="code hl_typedef" href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982">loader_type</a>{}} {}</div>
</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span></div>
<div class="foldopen" id="foldopen00181" data-start="{" data-end="}">
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a85024663deca781eb063b03254a3f825"> 181</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a85024663deca781eb063b03254a3f825">resource_cache</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a> &amp;allocator)</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> : <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a>{<a class="code hl_typedef" href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982">loader_type</a>{}, allocator} {}</div>
</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span></div>
<div class="foldopen" id="foldopen00189" data-start="{" data-end="}">
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a87b5fdd8fd001e8444d1b51de6fd9189"> 189</a></span> <span class="keyword">explicit</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a87b5fdd8fd001e8444d1b51de6fd9189">resource_cache</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982">loader_type</a> &amp;callable, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a> &amp;allocator = <a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a>{})</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> : pool{container_type{allocator}, callable} {}</div>
</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span></div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#ab35522f4f96e42e7ac246ce69abd2ee1"> 193</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#ab35522f4f96e42e7ac246ce69abd2ee1">resource_cache</a>(<span class="keyword">const</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span></div>
<div class="foldopen" id="foldopen00200" data-start="{" data-end="}">
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a1a91e3e3d19167b6c65e826e5419e273"> 200</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a1a91e3e3d19167b6c65e826e5419e273">resource_cache</a>(<span class="keyword">const</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;other, <span class="keyword">const</span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a> &amp;allocator)</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> : pool{std::piecewise_construct, std::forward_as_tuple(other.pool.first(), allocator), std::forward_as_tuple(other.pool.second())} {}</div>
</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span></div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a1132e7c77e407252254e164e72aad994"> 204</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a1132e7c77e407252254e164e72aad994">resource_cache</a>(<a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;&amp;) noexcept = default;</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span></div>
<div class="foldopen" id="foldopen00211" data-start="{" data-end="}">
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a8419d3c2c6e142ca851e2a31d6813c63"> 211</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a>(<a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;&amp;other, const <a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a> &amp;allocator)</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> : pool{std::piecewise_construct, std::forward_as_tuple(std::move(other.pool.first()), allocator), std::forward_as_tuple(std::move(other.pool.second()))} {}</div>
</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span></div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#aed5d19e621551b3c3a3b868757122aad"> 215</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#aed5d19e621551b3c3a3b868757122aad">~resource_cache</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#ad007cb4884a7dfa45d5c6937cd2d6943"> 221</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;<a class="code hl_function" href="classentt_1_1resource__cache.html#ad007cb4884a7dfa45d5c6937cd2d6943">operator=</a>(<span class="keyword">const</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span></div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a0f6b476fa530f7175aa628739e3f4f93"> 227</a></span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;<a class="code hl_function" href="classentt_1_1resource__cache.html#a0f6b476fa530f7175aa628739e3f4f93">operator=</a>(<a class="code hl_function" href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">resource_cache</a> &amp;&amp;) noexcept = default;</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span></div>
<div class="foldopen" id="foldopen00233" data-start="{" data-end="}">
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#aebe73d139285eec2ea6284112609af8a"> 233</a></span> [[nodiscard]] constexpr <a class="code hl_typedef" href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">allocator_type</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#aebe73d139285eec2ea6284112609af8a">get_allocator</a>() const noexcept {</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">return</span> pool.first().<a class="code hl_function" href="classentt_1_1resource__cache.html#aebe73d139285eec2ea6284112609af8a">get_allocator</a>();</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> }</div>
</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span></div>
<div class="foldopen" id="foldopen00244" data-start="{" data-end="}">
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a86e17d7b431149fcbb559963d4e2a0ab"> 244</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a86e17d7b431149fcbb559963d4e2a0ab">cbegin</a>() const noexcept {</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">return</span> pool.first().begin();</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> }</div>
</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span></div>
<div class="foldopen" id="foldopen00249" data-start="{" data-end="}">
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#ad6f22237738edb0cd44a5891b5e38543"> 249</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#ad6f22237738edb0cd44a5891b5e38543">begin</a>() const noexcept {</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> <span class="keywordflow">return</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a86e17d7b431149fcbb559963d4e2a0ab">cbegin</a>();</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> }</div>
</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span></div>
<div class="foldopen" id="foldopen00254" data-start="{" data-end="}">
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a14977ada6d28067be09d9deac2cd9129"> 254</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353">iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a14977ada6d28067be09d9deac2cd9129">begin</a>() noexcept {</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">return</span> pool.first().begin();</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> }</div>
</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span></div>
<div class="foldopen" id="foldopen00263" data-start="{" data-end="}">
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a3fc738c52e0da81c600dcbf66793358d"> 263</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a3fc738c52e0da81c600dcbf66793358d">cend</a>() const noexcept {</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">return</span> pool.first().end();</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> }</div>
</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span></div>
<div class="foldopen" id="foldopen00268" data-start="{" data-end="}">
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#af97b2505c1819418d81c3dd91bffb880"> 268</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#af97b2505c1819418d81c3dd91bffb880">end</a>() const noexcept {</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <span class="keywordflow">return</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#a3fc738c52e0da81c600dcbf66793358d">cend</a>();</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> }</div>
</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span></div>
<div class="foldopen" id="foldopen00273" data-start="{" data-end="}">
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#ae8d60475b4bbc2f4675ab801514bd082"> 273</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353">iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#ae8d60475b4bbc2f4675ab801514bd082">end</a>() noexcept {</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">return</span> pool.first().end();</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> }</div>
</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span></div>
<div class="foldopen" id="foldopen00281" data-start="{" data-end="}">
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#ab56988b1f8e221956bafb499ef409401"> 281</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#ab56988b1f8e221956bafb499ef409401">empty</a>() const noexcept {</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> <span class="keywordflow">return</span> pool.first().empty();</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> }</div>
</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span></div>
<div class="foldopen" id="foldopen00289" data-start="{" data-end="}">
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#af471e799fb944db35363ed910512cde9"> 289</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#af96dd3b16bdd0f1151b75786bdc0a2cb">size_type</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#af471e799fb944db35363ed910512cde9">size</a>() const noexcept {</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">return</span> pool.first().size();</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> }</div>
</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span></div>
<div class="foldopen" id="foldopen00294" data-start="{" data-end="}">
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#afc93c548b1c96d974a24e105ee6afd54"> 294</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#afc93c548b1c96d974a24e105ee6afd54">clear</a>() noexcept {</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> pool.first().clear();</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> }</div>
</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Args&gt;</div>
<div class="foldopen" id="foldopen00316" data-start="{" data-end="}">
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a4683e49fd16e93399c934b8e086d8175"> 316</a></span> std::pair&lt;iterator, bool&gt; <a class="code hl_function" href="classentt_1_1resource__cache.html#a4683e49fd16e93399c934b8e086d8175">load</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> <span class="keywordtype">id</span>, Args &amp;&amp;...args) {</div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> <span class="keywordflow">if</span>(<span class="keyword">auto</span> it = pool.first().find(<span class="keywordtype">id</span>); it != pool.first().end()) {</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> <span class="keywordflow">return</span> {it, <span class="keyword">false</span>};</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> }</div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> </div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> <span class="keywordflow">return</span> pool.first().emplace(<span class="keywordtype">id</span>, pool.second()(std::forward&lt;Args&gt;(args)...));</div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span> }</div>
</div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span></div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <span class="keyword">template</span>&lt;<span class="keyword">typename</span>... Args&gt;</div>
<div class="foldopen" id="foldopen00329" data-start="{" data-end="}">
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#aa8de6dd8616990992422d669debcb88c"> 329</a></span> std::pair&lt;iterator, bool&gt; <a class="code hl_function" href="classentt_1_1resource__cache.html#aa8de6dd8616990992422d669debcb88c">force_load</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> <span class="keywordtype">id</span>, Args &amp;&amp;...args) {</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> <span class="keywordflow">return</span> {pool.first().insert_or_assign(<span class="keywordtype">id</span>, pool.second()(std::forward&lt;Args&gt;(args)...)).first, <span class="keyword">true</span>};</div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> }</div>
</div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span></div>
<div class="foldopen" id="foldopen00343" data-start="{" data-end="}">
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a9b251c4193a8a6b7e5e3856e5ea95078"> 343</a></span> [[nodiscard]] <a class="code hl_class" href="classentt_1_1resource.html">resource&lt;const value_type&gt;</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a9b251c4193a8a6b7e5e3856e5ea95078">operator[]</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">if</span>(<span class="keyword">auto</span> it = pool.first().find(<span class="keywordtype">id</span>); it != pool.first().cend()) {</div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> <span class="keywordflow">return</span> <a class="code hl_class" href="classentt_1_1resource.html">resource&lt;const value_type&gt;</a>{it-&gt;second};</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span> }</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span> </div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">return</span> {};</div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> }</div>
</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span></div>
<div class="foldopen" id="foldopen00352" data-start="{" data-end="}">
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a3586708bffde50076bb16e8cda6222d5"> 352</a></span> [[nodiscard]] <a class="code hl_class" href="classentt_1_1resource.html">resource&lt;value_type&gt;</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a3586708bffde50076bb16e8cda6222d5">operator[]</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> <span class="keywordtype">id</span>) {</div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">if</span>(<span class="keyword">auto</span> it = pool.first().find(<span class="keywordtype">id</span>); it != pool.first().end()) {</div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> <span class="keywordflow">return</span> <a class="code hl_class" href="classentt_1_1resource.html">resource&lt;value_type&gt;</a>{it-&gt;second};</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> }</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> </div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">return</span> {};</div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> }</div>
</div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span></div>
<div class="foldopen" id="foldopen00365" data-start="{" data-end="}">
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#aff744458b981ee509a7381ffdf544522"> 365</a></span> [[nodiscard]] <span class="keywordtype">bool</span> <a class="code hl_function" href="classentt_1_1resource__cache.html#aff744458b981ee509a7381ffdf544522">contains</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> <span class="keywordtype">id</span>)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">return</span> pool.first().contains(<span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span> }</div>
</div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span></div>
<div class="foldopen" id="foldopen00374" data-start="{" data-end="}">
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a59fd1af63515fbb9e9ed26cb13dbe041"> 374</a></span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353">iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a59fd1af63515fbb9e9ed26cb13dbe041">erase</a>(<a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> pos) {</div>
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span> <span class="keyword">const</span> <span class="keyword">auto</span> it = pool.first().begin();</div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span> <span class="keywordflow">return</span> pool.first().erase(it + (pos - <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a>{it}));</div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span> }</div>
</div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span></div>
<div class="foldopen" id="foldopen00385" data-start="{" data-end="}">
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#af9938c0c0228fd59b67470e7a904cf3a"> 385</a></span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353">iterator</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#af9938c0c0228fd59b67470e7a904cf3a">erase</a>(<a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> first, <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a> last) {</div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> <span class="keyword">const</span> <span class="keyword">auto</span> it = pool.first().begin();</div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span> <span class="keywordflow">return</span> pool.first().erase(it + (first - <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a>{it}), it + (last - <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">const_iterator</a>{it}));</div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span> }</div>
</div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span></div>
<div class="foldopen" id="foldopen00395" data-start="{" data-end="}">
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a0166a373140e75be2c5b41ccd39d8375"> 395</a></span> <a class="code hl_typedef" href="classentt_1_1resource__cache.html#af96dd3b16bdd0f1151b75786bdc0a2cb">size_type</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a0166a373140e75be2c5b41ccd39d8375">erase</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> <span class="keywordtype">id</span>) {</div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span> <span class="keywordflow">return</span> pool.first().erase(<span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> }</div>
</div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span></div>
<div class="foldopen" id="foldopen00403" data-start="{" data-end="}">
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"><a class="line" href="classentt_1_1resource__cache.html#a29225250d340dfc89818ab6662efe774"> 403</a></span> [[nodiscard]] <a class="code hl_typedef" href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982">loader_type</a> <a class="code hl_function" href="classentt_1_1resource__cache.html#a29225250d340dfc89818ab6662efe774">loader</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span> <span class="keywordflow">return</span> pool.second();</div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span> }</div>
</div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span> </div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> <a class="code hl_class" href="classentt_1_1compressed__pair.html">compressed_pair&lt;container_type, loader_type&gt;</a> pool;</div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span>};</div>
</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> </div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span>} <span class="comment">// namespace entt</span></div>
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span> </div>
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno"> 413</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassentt_1_1compressed__pair_html"><div class="ttname"><a href="classentt_1_1compressed__pair.html">entt::compressed_pair</a></div><div class="ttdoc">A compressed pair.</div><div class="ttdef"><b>Definition</b> <a href="compressed__pair_8hpp_source.html#l00085">compressed_pair.hpp:87</a></div></div>
<div class="ttc" id="aclassentt_1_1dense__map_html"><div class="ttname"><a href="classentt_1_1dense__map.html">entt::dense_map</a></div><div class="ttdoc">Associative container for key-value pairs with unique keys.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00260">dense_map.hpp:260</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a0166a373140e75be2c5b41ccd39d8375"><div class="ttname"><a href="classentt_1_1resource__cache.html#a0166a373140e75be2c5b41ccd39d8375">entt::resource_cache::erase</a></div><div class="ttdeci">size_type erase(const id_type id)</div><div class="ttdoc">Removes the given elements from a cache.</div><div class="ttdef"><b>Definition</b> <a href="#l00395">cache.hpp:395</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a06ba856c4484f52a91a8ee140a223bd5"><div class="ttname"><a href="classentt_1_1resource__cache.html#a06ba856c4484f52a91a8ee140a223bd5">entt::resource_cache::resource_cache</a></div><div class="ttdeci">resource_cache()</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00174">cache.hpp:174</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a0f6b476fa530f7175aa628739e3f4f93"><div class="ttname"><a href="classentt_1_1resource__cache.html#a0f6b476fa530f7175aa628739e3f4f93">entt::resource_cache::operator=</a></div><div class="ttdeci">resource_cache &amp; operator=(resource_cache &amp;&amp;) noexcept=default</div><div class="ttdoc">Default move assignment operator.</div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a1132e7c77e407252254e164e72aad994"><div class="ttname"><a href="classentt_1_1resource__cache.html#a1132e7c77e407252254e164e72aad994">entt::resource_cache::resource_cache</a></div><div class="ttdeci">resource_cache(resource_cache &amp;&amp;) noexcept=default</div><div class="ttdoc">Default move constructor.</div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a14977ada6d28067be09d9deac2cd9129"><div class="ttname"><a href="classentt_1_1resource__cache.html#a14977ada6d28067be09d9deac2cd9129">entt::resource_cache::begin</a></div><div class="ttdeci">iterator begin() noexcept</div><div class="ttdoc">Returns an iterator to the beginning.</div><div class="ttdef"><b>Definition</b> <a href="#l00254">cache.hpp:254</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a1a91e3e3d19167b6c65e826e5419e273"><div class="ttname"><a href="classentt_1_1resource__cache.html#a1a91e3e3d19167b6c65e826e5419e273">entt::resource_cache::resource_cache</a></div><div class="ttdeci">resource_cache(const resource_cache &amp;other, const allocator_type &amp;allocator)</div><div class="ttdoc">Allocator-extended copy constructor.</div><div class="ttdef"><b>Definition</b> <a href="#l00200">cache.hpp:200</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a29225250d340dfc89818ab6662efe774"><div class="ttname"><a href="classentt_1_1resource__cache.html#a29225250d340dfc89818ab6662efe774">entt::resource_cache::loader</a></div><div class="ttdeci">loader_type loader() const</div><div class="ttdoc">Returns the loader used to create resources.</div><div class="ttdef"><b>Definition</b> <a href="#l00403">cache.hpp:403</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a3586708bffde50076bb16e8cda6222d5"><div class="ttname"><a href="classentt_1_1resource__cache.html#a3586708bffde50076bb16e8cda6222d5">entt::resource_cache::operator[]</a></div><div class="ttdeci">resource&lt; value_type &gt; operator[](const id_type id)</div><div class="ttdoc">Returns a handle for a given resource identifier.</div><div class="ttdef"><b>Definition</b> <a href="#l00352">cache.hpp:352</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a3fc738c52e0da81c600dcbf66793358d"><div class="ttname"><a href="classentt_1_1resource__cache.html#a3fc738c52e0da81c600dcbf66793358d">entt::resource_cache::cend</a></div><div class="ttdeci">const_iterator cend() const noexcept</div><div class="ttdoc">Returns an iterator to the end.</div><div class="ttdef"><b>Definition</b> <a href="#l00263">cache.hpp:263</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a4683e49fd16e93399c934b8e086d8175"><div class="ttname"><a href="classentt_1_1resource__cache.html#a4683e49fd16e93399c934b8e086d8175">entt::resource_cache::load</a></div><div class="ttdeci">std::pair&lt; iterator, bool &gt; load(const id_type id, Args &amp;&amp;...args)</div><div class="ttdoc">Loads a resource, if its identifier does not exist.</div><div class="ttdef"><b>Definition</b> <a href="#l00316">cache.hpp:316</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a59fd1af63515fbb9e9ed26cb13dbe041"><div class="ttname"><a href="classentt_1_1resource__cache.html#a59fd1af63515fbb9e9ed26cb13dbe041">entt::resource_cache::erase</a></div><div class="ttdeci">iterator erase(const_iterator pos)</div><div class="ttdoc">Removes an element from a given position.</div><div class="ttdef"><b>Definition</b> <a href="#l00374">cache.hpp:374</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a7405d91504b5793f260a93695f6cdee4"><div class="ttname"><a href="classentt_1_1resource__cache.html#a7405d91504b5793f260a93695f6cdee4">entt::resource_cache::value_type</a></div><div class="ttdeci">Type value_type</div><div class="ttdoc">Resource type.</div><div class="ttdef"><b>Definition</b> <a href="#l00163">cache.hpp:163</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a834f161302d84ba1303358ce22f6e982"><div class="ttname"><a href="classentt_1_1resource__cache.html#a834f161302d84ba1303358ce22f6e982">entt::resource_cache::loader_type</a></div><div class="ttdeci">Loader loader_type</div><div class="ttdoc">Loader type.</div><div class="ttdef"><b>Definition</b> <a href="#l00167">cache.hpp:167</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a85024663deca781eb063b03254a3f825"><div class="ttname"><a href="classentt_1_1resource__cache.html#a85024663deca781eb063b03254a3f825">entt::resource_cache::resource_cache</a></div><div class="ttdeci">resource_cache(const allocator_type &amp;allocator)</div><div class="ttdoc">Constructs an empty cache with a given allocator.</div><div class="ttdef"><b>Definition</b> <a href="#l00181">cache.hpp:181</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a86e17d7b431149fcbb559963d4e2a0ab"><div class="ttname"><a href="classentt_1_1resource__cache.html#a86e17d7b431149fcbb559963d4e2a0ab">entt::resource_cache::cbegin</a></div><div class="ttdeci">const_iterator cbegin() const noexcept</div><div class="ttdoc">Returns an iterator to the beginning.</div><div class="ttdef"><b>Definition</b> <a href="#l00244">cache.hpp:244</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a87b5fdd8fd001e8444d1b51de6fd9189"><div class="ttname"><a href="classentt_1_1resource__cache.html#a87b5fdd8fd001e8444d1b51de6fd9189">entt::resource_cache::resource_cache</a></div><div class="ttdeci">resource_cache(const loader_type &amp;callable, const allocator_type &amp;allocator=allocator_type{})</div><div class="ttdoc">Constructs an empty cache with a given allocator and loader.</div><div class="ttdef"><b>Definition</b> <a href="#l00189">cache.hpp:189</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a8eb72ec2d185a953cba0ac2f6e87d693"><div class="ttname"><a href="classentt_1_1resource__cache.html#a8eb72ec2d185a953cba0ac2f6e87d693">entt::resource_cache::const_iterator</a></div><div class="ttdeci">internal::resource_cache_iterator&lt; const Type, typename container_type::const_iterator &gt; const_iterator</div><div class="ttdoc">Constant input iterator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00171">cache.hpp:171</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_a9b251c4193a8a6b7e5e3856e5ea95078"><div class="ttname"><a href="classentt_1_1resource__cache.html#a9b251c4193a8a6b7e5e3856e5ea95078">entt::resource_cache::operator[]</a></div><div class="ttdeci">resource&lt; const value_type &gt; operator[](const id_type id) const</div><div class="ttdoc">Returns a handle for a given resource identifier.</div><div class="ttdef"><b>Definition</b> <a href="#l00343">cache.hpp:343</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_aa8de6dd8616990992422d669debcb88c"><div class="ttname"><a href="classentt_1_1resource__cache.html#aa8de6dd8616990992422d669debcb88c">entt::resource_cache::force_load</a></div><div class="ttdeci">std::pair&lt; iterator, bool &gt; force_load(const id_type id, Args &amp;&amp;...args)</div><div class="ttdoc">Force loads a resource, if its identifier does not exist.</div><div class="ttdef"><b>Definition</b> <a href="#l00329">cache.hpp:329</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_aad6a23cc2ea4a9367ebdb9b186308353"><div class="ttname"><a href="classentt_1_1resource__cache.html#aad6a23cc2ea4a9367ebdb9b186308353">entt::resource_cache::iterator</a></div><div class="ttdeci">internal::resource_cache_iterator&lt; Type, typename container_type::iterator &gt; iterator</div><div class="ttdoc">Input iterator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00169">cache.hpp:169</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_ab1e2dc3aeffbbbce6d48e0c46d908cfd"><div class="ttname"><a href="classentt_1_1resource__cache.html#ab1e2dc3aeffbbbce6d48e0c46d908cfd">entt::resource_cache::allocator_type</a></div><div class="ttdeci">Allocator allocator_type</div><div class="ttdoc">Allocator type.</div><div class="ttdef"><b>Definition</b> <a href="#l00161">cache.hpp:161</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_ab35522f4f96e42e7ac246ce69abd2ee1"><div class="ttname"><a href="classentt_1_1resource__cache.html#ab35522f4f96e42e7ac246ce69abd2ee1">entt::resource_cache::resource_cache</a></div><div class="ttdeci">resource_cache(const resource_cache &amp;)=default</div><div class="ttdoc">Default copy constructor.</div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_ab56988b1f8e221956bafb499ef409401"><div class="ttname"><a href="classentt_1_1resource__cache.html#ab56988b1f8e221956bafb499ef409401">entt::resource_cache::empty</a></div><div class="ttdeci">bool empty() const noexcept</div><div class="ttdoc">Returns true if a cache contains no resources, false otherwise.</div><div class="ttdef"><b>Definition</b> <a href="#l00281">cache.hpp:281</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_ad007cb4884a7dfa45d5c6937cd2d6943"><div class="ttname"><a href="classentt_1_1resource__cache.html#ad007cb4884a7dfa45d5c6937cd2d6943">entt::resource_cache::operator=</a></div><div class="ttdeci">resource_cache &amp; operator=(const resource_cache &amp;)=default</div><div class="ttdoc">Default copy assignment operator.</div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_ad6f22237738edb0cd44a5891b5e38543"><div class="ttname"><a href="classentt_1_1resource__cache.html#ad6f22237738edb0cd44a5891b5e38543">entt::resource_cache::begin</a></div><div class="ttdeci">const_iterator begin() const noexcept</div><div class="ttdoc">Returns an iterator to the beginning.</div><div class="ttdef"><b>Definition</b> <a href="#l00249">cache.hpp:249</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_ae8d60475b4bbc2f4675ab801514bd082"><div class="ttname"><a href="classentt_1_1resource__cache.html#ae8d60475b4bbc2f4675ab801514bd082">entt::resource_cache::end</a></div><div class="ttdeci">iterator end() noexcept</div><div class="ttdoc">Returns an iterator to the end.</div><div class="ttdef"><b>Definition</b> <a href="#l00273">cache.hpp:273</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_aebe73d139285eec2ea6284112609af8a"><div class="ttname"><a href="classentt_1_1resource__cache.html#aebe73d139285eec2ea6284112609af8a">entt::resource_cache::get_allocator</a></div><div class="ttdeci">constexpr allocator_type get_allocator() const noexcept</div><div class="ttdoc">Returns the associated allocator.</div><div class="ttdef"><b>Definition</b> <a href="#l00233">cache.hpp:233</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_aed5d19e621551b3c3a3b868757122aad"><div class="ttname"><a href="classentt_1_1resource__cache.html#aed5d19e621551b3c3a3b868757122aad">entt::resource_cache::~resource_cache</a></div><div class="ttdeci">~resource_cache()=default</div><div class="ttdoc">Default destructor.</div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_af471e799fb944db35363ed910512cde9"><div class="ttname"><a href="classentt_1_1resource__cache.html#af471e799fb944db35363ed910512cde9">entt::resource_cache::size</a></div><div class="ttdeci">size_type size() const noexcept</div><div class="ttdoc">Number of resources managed by a cache.</div><div class="ttdef"><b>Definition</b> <a href="#l00289">cache.hpp:289</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_af96dd3b16bdd0f1151b75786bdc0a2cb"><div class="ttname"><a href="classentt_1_1resource__cache.html#af96dd3b16bdd0f1151b75786bdc0a2cb">entt::resource_cache::size_type</a></div><div class="ttdeci">std::size_t size_type</div><div class="ttdoc">Unsigned integer type.</div><div class="ttdef"><b>Definition</b> <a href="#l00165">cache.hpp:165</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_af97b2505c1819418d81c3dd91bffb880"><div class="ttname"><a href="classentt_1_1resource__cache.html#af97b2505c1819418d81c3dd91bffb880">entt::resource_cache::end</a></div><div class="ttdeci">const_iterator end() const noexcept</div><div class="ttdoc">Returns an iterator to the end.</div><div class="ttdef"><b>Definition</b> <a href="#l00268">cache.hpp:268</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_af9938c0c0228fd59b67470e7a904cf3a"><div class="ttname"><a href="classentt_1_1resource__cache.html#af9938c0c0228fd59b67470e7a904cf3a">entt::resource_cache::erase</a></div><div class="ttdeci">iterator erase(const_iterator first, const_iterator last)</div><div class="ttdoc">Removes the given elements from a cache.</div><div class="ttdef"><b>Definition</b> <a href="#l00385">cache.hpp:385</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_afc93c548b1c96d974a24e105ee6afd54"><div class="ttname"><a href="classentt_1_1resource__cache.html#afc93c548b1c96d974a24e105ee6afd54">entt::resource_cache::clear</a></div><div class="ttdeci">void clear() noexcept</div><div class="ttdoc">Clears a cache.</div><div class="ttdef"><b>Definition</b> <a href="#l00294">cache.hpp:294</a></div></div>
<div class="ttc" id="aclassentt_1_1resource__cache_html_aff744458b981ee509a7381ffdf544522"><div class="ttname"><a href="classentt_1_1resource__cache.html#aff744458b981ee509a7381ffdf544522">entt::resource_cache::contains</a></div><div class="ttdeci">bool contains(const id_type id) const</div><div class="ttdoc">Checks if a cache contains a given identifier.</div><div class="ttdef"><b>Definition</b> <a href="#l00365">cache.hpp:365</a></div></div>
<div class="ttc" id="aclassentt_1_1resource_html"><div class="ttname"><a href="classentt_1_1resource.html">entt::resource</a></div><div class="ttdoc">Basic resource handle.</div><div class="ttdef"><b>Definition</b> <a href="resource_8hpp_source.html#l00022">resource.hpp:22</a></div></div>
<div class="ttc" id="anamespaceentt_html"><div class="ttname"><a href="namespaceentt.html">entt</a></div><div class="ttdoc">EnTT default namespace.</div><div class="ttdef"><b>Definition</b> <a href="dense__map_8hpp_source.html#l00022">dense_map.hpp:22</a></div></div>
<div class="ttc" id="anamespaceentt_html_a620d583c0e6d64acf3d394524bb72303"><div class="ttname"><a href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">entt::id_type</a></div><div class="ttdeci">std::uint32_t id_type</div><div class="ttdoc">Alias declaration for type identifiers.</div><div class="ttdef"><b>Definition</b> <a href="core_2fwd_8hpp_source.html#l00029">fwd.hpp:29</a></div></div>
<div class="ttc" id="anamespaceentt_html_a8c763e890bb00479a6a6aeae3b2a75f0"><div class="ttname"><a href="namespaceentt.html#a8c763e890bb00479a6a6aeae3b2a75f0">entt::operator&lt;=</a></div><div class="ttdeci">constexpr bool operator&lt;=(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00257">hashed_string.hpp:257</a></div></div>
<div class="ttc" id="anamespaceentt_html_aa88e297d57dd5547afcde8dd291c4b8f"><div class="ttname"><a href="namespaceentt.html#aa88e297d57dd5547afcde8dd291c4b8f">entt::operator&lt;</a></div><div class="ttdeci">constexpr bool operator&lt;(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00244">hashed_string.hpp:244</a></div></div>
<div class="ttc" id="anamespaceentt_html_ab36ceb26049f62c07817a385e35395f6"><div class="ttname"><a href="namespaceentt.html#ab36ceb26049f62c07817a385e35395f6">entt::operator+</a></div><div class="ttdeci">constexpr type_list&lt; Type..., Other... &gt; operator+(type_list&lt; Type... &gt;, type_list&lt; Other... &gt;)</div><div class="ttdoc">Concatenates multiple type lists.</div><div class="ttdef"><b>Definition</b> <a href="core_2type__traits_8hpp_source.html#l00210">type_traits.hpp:210</a></div></div>
<div class="ttc" id="anamespaceentt_html_ad9accc71a383509ada028f7fa2b767bf"><div class="ttname"><a href="namespaceentt.html#ad9accc71a383509ada028f7fa2b767bf">entt::operator!=</a></div><div class="ttdeci">constexpr bool operator!=(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00232">hashed_string.hpp:232</a></div></div>
<div class="ttc" id="anamespaceentt_html_adadb88dfb4278df554e7ffec5361ece4"><div class="ttname"><a href="namespaceentt.html#adadb88dfb4278df554e7ffec5361ece4">entt::operator&gt;=</a></div><div class="ttdeci">constexpr bool operator&gt;=(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00283">hashed_string.hpp:283</a></div></div>
<div class="ttc" id="anamespaceentt_html_aec8131af000055ceab85646c14f234ad"><div class="ttname"><a href="namespaceentt.html#aec8131af000055ceab85646c14f234ad">entt::operator&gt;</a></div><div class="ttdeci">constexpr bool operator&gt;(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00270">hashed_string.hpp:270</a></div></div>
<div class="ttc" id="anamespaceentt_html_af7c61951b721a1e3612cf536bd707501"><div class="ttname"><a href="namespaceentt.html#af7c61951b721a1e3612cf536bd707501">entt::operator==</a></div><div class="ttdeci">constexpr bool operator==(const basic_hashed_string&lt; Char &gt; &amp;lhs, const basic_hashed_string&lt; Char &gt; &amp;rhs) noexcept</div><div class="ttdoc">Compares two hashed strings.</div><div class="ttdef"><b>Definition</b> <a href="hashed__string_8hpp_source.html#l00220">hashed_string.hpp:220</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+136
View File
@@ -0,0 +1,136 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1adjacency__matrix.html">adjacency_matrix</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::adjacency_matrix&lt; Category, Allocator &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a3b3d88826c5e9e6d6696c57cfeadc365">adjacency_matrix</a>() noexcept(noexcept(allocator_type{}))</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#ae6940bc105cd3cd328a6abc3f19c14dc">adjacency_matrix</a>(const allocator_type &amp;allocator) noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a854098472673c06c946df5efec991517">adjacency_matrix</a>(const size_type vertices, const allocator_type &amp;allocator=allocator_type{})</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a1b5b018fd516b2f3fbb5222ea47a2bbf">adjacency_matrix</a>(const adjacency_matrix &amp;)=default</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#adaa9b708b88f549673e7a9db7203b96c">adjacency_matrix</a>(const adjacency_matrix &amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#adcbf612110d41734771cf1c5a6d999e3">adjacency_matrix</a>(adjacency_matrix &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a7195a32e20c1099e6e32ef3e73475801">adjacency_matrix</a>(adjacency_matrix &amp;&amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a740021db9b7bad492ebe3d074769d8b8">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a81931cd90488b3e5269217f7d6064c93">clear</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a783833a34672bcbd0afab063ab417a97">contains</a>(const vertex_type lhs, const vertex_type rhs) const</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a4e2e74717c42df138ed98b1a33b6ffd8">edge_iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#aa2ac50f08d437489d4f761b418c48eda">edge_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#ab6638e821360bafa2d7ce2e12ef0825a">edges</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a4d262116700a6aeda88d3bd0d0f2e3c2">empty</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#adf91bac04f07bf7ce0478ecd5baeece7">erase</a>(const vertex_type lhs, const vertex_type rhs)</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#aea59b70885fd22df3f80f59cf6e9e58b">get_allocator</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a3beccfd9cecbffa10c80dc702ef95917">graph_category</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#ad1eb3bad19846f57d9a6a44bed6f360d">in_edge_iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a9213407b3d7b543348000a44357ccca1">in_edges</a>(const vertex_type vertex) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a16d422fbdac17535196b27001b4bfd63">insert</a>(const vertex_type lhs, const vertex_type rhs)</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#ab26e50bcbe59bf835f6a34a21a622095">operator=</a>(const adjacency_matrix &amp;)=default</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a760b57bbb50f8e98a9f6bf8c6c6a19c5">operator=</a>(adjacency_matrix &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a88b3a1f0df93f9785b51ece42cb71852">out_edge_iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a4e28de523aa924aea9c8c78b5981a9df">out_edges</a>(const vertex_type vertex) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#ad45c4c6b938ed028d7c99b1d1a678b9e">resize</a>(const size_type vertices)</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a70f8706c96d4c000ceab51d88402ca74">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a72507bd210570d5712a5c40b0d345b6c">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a5ee4c669461f74485c4263ece0c05f2f">swap</a>(adjacency_matrix &amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#a2a5cd6977bd31867ed853b737f3a2ff1">vertex_iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#ad59306803ff05b7d2d3244f7e59ef9d9">vertex_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#aac3dbc29bb2a31de879b62742124ddd4">vertices</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html#aabdea98cbe302052e65e1a5328b49106">~adjacency_matrix</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1adjacency__matrix.html">entt::adjacency_matrix&lt; Category, Allocator &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
File diff suppressed because it is too large Load Diff
+108
View File
@@ -0,0 +1,108 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1as__group.html">as_group</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::as_group&lt; Registry &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1as__group.html">entt::as_group&lt; Registry &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1as__group.html#a2ec8b1a86b502a9649cd9db3f90680a0">as_group</a>(registry_type &amp;source) noexcept</td><td class="entry"><a class="el" href="classentt_1_1as__group.html">entt::as_group&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1as__group.html#a01a68f9e8552b14f9bc2e1a48c665c70">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1as__group.html">entt::as_group&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1as__group.html#ab252f9fcd1a370a52dd8abfd7f32cec8">operator basic_group&lt; Owned, Get, Exclude &gt;</a>() const</td><td class="entry"><a class="el" href="classentt_1_1as__group.html">entt::as_group&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1as__group.html#a181c04aa4d53d5fef0f90b33e000f8d1">registry_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1as__group.html">entt::as_group&lt; Registry &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+266
View File
@@ -0,0 +1,266 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::as_group&lt; Registry &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1as__group.html">as_group</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1as__group-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::as_group&lt; Registry &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Converts a registry to a group.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="helper_8hpp_source.html">helper.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a181c04aa4d53d5fef0f90b33e000f8d1" id="r_a181c04aa4d53d5fef0f90b33e000f8d1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a181c04aa4d53d5fef0f90b33e000f8d1">registry_type</a> = Registry</td></tr>
<tr class="memdesc:a181c04aa4d53d5fef0f90b33e000f8d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of registry to convert. <br /></td></tr>
<tr class="separator:a181c04aa4d53d5fef0f90b33e000f8d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01a68f9e8552b14f9bc2e1a48c665c70" id="r_a01a68f9e8552b14f9bc2e1a48c665c70"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a01a68f9e8552b14f9bc2e1a48c665c70">entity_type</a> = typename registry_type::entity_type</td></tr>
<tr class="memdesc:a01a68f9e8552b14f9bc2e1a48c665c70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:a01a68f9e8552b14f9bc2e1a48c665c70"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2ec8b1a86b502a9649cd9db3f90680a0" id="r_a2ec8b1a86b502a9649cd9db3f90680a0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2ec8b1a86b502a9649cd9db3f90680a0">as_group</a> (<a class="el" href="#a181c04aa4d53d5fef0f90b33e000f8d1">registry_type</a> &amp;source) noexcept</td></tr>
<tr class="memdesc:a2ec8b1a86b502a9649cd9db3f90680a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a converter for a given registry. <br /></td></tr>
<tr class="separator:a2ec8b1a86b502a9649cd9db3f90680a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab252f9fcd1a370a52dd8abfd7f32cec8" id="r_ab252f9fcd1a370a52dd8abfd7f32cec8"><td class="memTemplParams" colspan="2">template&lt;typename Owned, typename Get, typename Exclude&gt; </td></tr>
<tr class="memitem:ab252f9fcd1a370a52dd8abfd7f32cec8"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ab252f9fcd1a370a52dd8abfd7f32cec8">operator basic_group&lt; Owned, Get, Exclude &gt;</a> () const</td></tr>
<tr class="memdesc:ab252f9fcd1a370a52dd8abfd7f32cec8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conversion function from a registry to a group. <br /></td></tr>
<tr class="separator:ab252f9fcd1a370a52dd8abfd7f32cec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Registry&gt;<br />
class entt::as_group&lt; Registry &gt;</div><p>Converts a registry to a group. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Registry</td><td>Basic registry type. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00061">61</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a01a68f9e8552b14f9bc2e1a48c665c70" name="a01a68f9e8552b14f9bc2e1a48c665c70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01a68f9e8552b14f9bc2e1a48c665c70">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1as__group.html">entt::as_group</a>&lt; Registry &gt;::entity_type = typename registry_type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00075">75</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<a id="a181c04aa4d53d5fef0f90b33e000f8d1" name="a181c04aa4d53d5fef0f90b33e000f8d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a181c04aa4d53d5fef0f90b33e000f8d1">&#9670;&#160;</a></span>registry_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1as__group.html">entt::as_group</a>&lt; Registry &gt;::registry_type = Registry</td>
</tr>
</table>
</div><div class="memdoc">
<p>Type of registry to convert. </p>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00073">73</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a2ec8b1a86b502a9649cd9db3f90680a0" name="a2ec8b1a86b502a9649cd9db3f90680a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ec8b1a86b502a9649cd9db3f90680a0">&#9670;&#160;</a></span>as_group()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1as__group.html">entt::as_group</a>&lt; Registry &gt;::as_group </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#a181c04aa4d53d5fef0f90b33e000f8d1">registry_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>source</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a converter for a given registry. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>A valid reference to a registry. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00081">81</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab252f9fcd1a370a52dd8abfd7f32cec8" name="ab252f9fcd1a370a52dd8abfd7f32cec8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab252f9fcd1a370a52dd8abfd7f32cec8">&#9670;&#160;</a></span>operator basic_group&lt; Owned, Get, Exclude &gt;()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename Owned, typename Get, typename Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1as__group.html">entt::as_group</a>&lt; Registry &gt;::operator <a class="el" href="classentt_1_1basic__group.html">basic_group</a>&lt; Owned, Get, Exclude &gt; </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Conversion function from a registry to a group. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Owned</td><td>Types of <em>owned</em> by the group. </td></tr>
<tr><td class="paramname">Get</td><td>Types of storage <em>observed</em> by the group. </td></tr>
<tr><td class="paramname">Exclude</td><td>Types of storage used to filter the group. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A newly created group. </dd></dl>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00092">92</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/entt/entity/<a class="el" href="helper_8hpp_source.html">helper.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+108
View File
@@ -0,0 +1,108 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1as__view.html">as_view</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::as_view&lt; Registry &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1as__view.html">entt::as_view&lt; Registry &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1as__view.html#a59df7f49ab88f62ca17fd7d92959d06c">as_view</a>(registry_type &amp;source) noexcept</td><td class="entry"><a class="el" href="classentt_1_1as__view.html">entt::as_view&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1as__view.html#a9ae57dc533e1c2e1279849c8101d07ed">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1as__view.html">entt::as_view&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1as__view.html#afd2048bc06e3758fa9fb811e7dd10c5f">operator basic_view&lt; Get, Exclude &gt;</a>() const</td><td class="entry"><a class="el" href="classentt_1_1as__view.html">entt::as_view&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1as__view.html#acb61ac3405aeaef4fb051c8ebb5f0802">registry_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1as__view.html">entt::as_view&lt; Registry &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+265
View File
@@ -0,0 +1,265 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::as_view&lt; Registry &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1as__view.html">as_view</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1as__view-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::as_view&lt; Registry &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Converts a registry to a view.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="helper_8hpp_source.html">helper.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:acb61ac3405aeaef4fb051c8ebb5f0802" id="r_acb61ac3405aeaef4fb051c8ebb5f0802"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acb61ac3405aeaef4fb051c8ebb5f0802">registry_type</a> = Registry</td></tr>
<tr class="memdesc:acb61ac3405aeaef4fb051c8ebb5f0802"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of registry to convert. <br /></td></tr>
<tr class="separator:acb61ac3405aeaef4fb051c8ebb5f0802"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ae57dc533e1c2e1279849c8101d07ed" id="r_a9ae57dc533e1c2e1279849c8101d07ed"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9ae57dc533e1c2e1279849c8101d07ed">entity_type</a> = typename registry_type::entity_type</td></tr>
<tr class="memdesc:a9ae57dc533e1c2e1279849c8101d07ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:a9ae57dc533e1c2e1279849c8101d07ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a59df7f49ab88f62ca17fd7d92959d06c" id="r_a59df7f49ab88f62ca17fd7d92959d06c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a59df7f49ab88f62ca17fd7d92959d06c">as_view</a> (<a class="el" href="#acb61ac3405aeaef4fb051c8ebb5f0802">registry_type</a> &amp;source) noexcept</td></tr>
<tr class="memdesc:a59df7f49ab88f62ca17fd7d92959d06c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a converter for a given registry. <br /></td></tr>
<tr class="separator:a59df7f49ab88f62ca17fd7d92959d06c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd2048bc06e3758fa9fb811e7dd10c5f" id="r_afd2048bc06e3758fa9fb811e7dd10c5f"><td class="memTemplParams" colspan="2">template&lt;typename Get, typename Exclude&gt; </td></tr>
<tr class="memitem:afd2048bc06e3758fa9fb811e7dd10c5f"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#afd2048bc06e3758fa9fb811e7dd10c5f">operator basic_view&lt; Get, Exclude &gt;</a> () const</td></tr>
<tr class="memdesc:afd2048bc06e3758fa9fb811e7dd10c5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conversion function from a registry to a view. <br /></td></tr>
<tr class="separator:afd2048bc06e3758fa9fb811e7dd10c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Registry&gt;<br />
class entt::as_view&lt; Registry &gt;</div><p>Converts a registry to a view. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Registry</td><td>Basic registry type. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00022">22</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a9ae57dc533e1c2e1279849c8101d07ed" name="a9ae57dc533e1c2e1279849c8101d07ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ae57dc533e1c2e1279849c8101d07ed">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1as__view.html">entt::as_view</a>&lt; Registry &gt;::entity_type = typename registry_type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00032">32</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<a id="acb61ac3405aeaef4fb051c8ebb5f0802" name="acb61ac3405aeaef4fb051c8ebb5f0802"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb61ac3405aeaef4fb051c8ebb5f0802">&#9670;&#160;</a></span>registry_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1as__view.html">entt::as_view</a>&lt; Registry &gt;::registry_type = Registry</td>
</tr>
</table>
</div><div class="memdoc">
<p>Type of registry to convert. </p>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00030">30</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a59df7f49ab88f62ca17fd7d92959d06c" name="a59df7f49ab88f62ca17fd7d92959d06c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59df7f49ab88f62ca17fd7d92959d06c">&#9670;&#160;</a></span>as_view()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1as__view.html">entt::as_view</a>&lt; Registry &gt;::as_view </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#acb61ac3405aeaef4fb051c8ebb5f0802">registry_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>source</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a converter for a given registry. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>A valid reference to a registry. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00038">38</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="afd2048bc06e3758fa9fb811e7dd10c5f" name="afd2048bc06e3758fa9fb811e7dd10c5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd2048bc06e3758fa9fb811e7dd10c5f">&#9670;&#160;</a></span>operator basic_view&lt; Get, Exclude &gt;()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename Get, typename Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1as__view.html">entt::as_view</a>&lt; Registry &gt;::operator <a class="el" href="classentt_1_1basic__view.html">basic_view</a>&lt; Get, Exclude &gt; </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Conversion function from a registry to a view. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Get</td><td>Type of storage used to construct the view. </td></tr>
<tr><td class="paramname">Exclude</td><td>Types of storage used to filter the view. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A newly created view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="helper_8hpp_source.html#l00048">48</a> of file <a class="el" href="helper_8hpp_source.html">helper.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/entt/entity/<a class="el" href="helper_8hpp_source.html">helper.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+134
View File
@@ -0,0 +1,134 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__any.html">basic_any</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_any&lt; Len, Align &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a8248e8443c6208077db312079a05fd96">alignment</a></td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#aab60eaf9e3395de34c4d46d3ffba9393">as_ref</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ac0a6730e219bb15d8e4f8f63d270e0d3">as_ref</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a4fc7178c09a4c7fc57891183800d1688">assign</a>(const basic_any &amp;other)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a5765d9d4bcc5098791f3e84d4f92288f">assign</a>(basic_any &amp;&amp;other)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a164cd19f4369e7c010f4581971ae2c9c">basic_any</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a3a84c837c69ab23b08a535ab79f7eefa">basic_any</a>(std::in_place_type_t&lt; Type &gt;, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#aa73a486cc548eb0625807c6e4c43fe8c">basic_any</a>(std::in_place_t, Type *value)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#afb1d00c509ae9127faa1cc2a5887bdab">basic_any</a>(Type &amp;&amp;value)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a3196700b32252e5b59a79994b907afda">basic_any</a>(const basic_any &amp;other)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#aa335df93ca9c2ba89efd9664f9e66609">basic_any</a>(basic_any &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a43d097fa91670846621ec23995bc80f3">data</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#afce19133c0447cf4abfb1eea3f812959">data</a>(const type_info &amp;req) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#af8f31671bcdb27166a7614a795680ef6">data</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ab90a391cc904cb9b68be91b36dd2155e">data</a>(const type_info &amp;req) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a612abee6a4ebf016df27929668839fc0">emplace</a>(Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>instance</b> (defined in <a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a>)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a5fbc1fb99c934c59524af552ae2a33c3">length</a></td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a0a4e687230c96ff901b41d16b7fd41f6">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a749a2855eff737c3ce0882f30bf7ad9a">operator!=</a>(const basic_any &amp;other) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ab3f60cd57d55ff657927371cf06c2325">operator=</a>(const basic_any &amp;other)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ace596f46c6bb613430b9f7ee5e4b3d01">operator=</a>(basic_any &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ac54b5130a6ceee1cc396290e7701a7c3">operator=</a>(Type &amp;&amp;value)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ae7b91c6ef21a43af18d8f1657e458461">operator==</a>(const basic_any &amp;other) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a4f36479ca4ac3ad94a80fc3ac3eb1a24">owner</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#aa596e3cbca62ec101627dcdd82f216b7">policy</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a0f267d3bbc148e7e240b902b1819c9a6">reset</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>storage</b> (defined in <a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a>)</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#a63c48ddb1677383ba12752ffa387139b">type</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__any.html#ab103382955f577cd8a714c7b5b89d9c6">~basic_any</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__any.html">entt::basic_any&lt; Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
File diff suppressed because it is too large Load Diff
+5
View File
@@ -0,0 +1,5 @@
<map id="entt::basic_any&lt; Len, Align &gt;" name="entt::basic_any&lt; Len, Align &gt;">
<area shape="rect" id="Node000001" title="A SBO friendly, type&#45;safe container for single values of any type." alt="" coords="7,108,155,148"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,156,45"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="83,59,83,108,78,108,78,59"/>
</map>
+1
View File
@@ -0,0 +1 @@
338d82b448edf21f9ec4406050e3d9f3
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

@@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__common__view.html">basic_common_view</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a63c2d833d41810b5a5b28ecf653dc056">back</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a2007dc390b50ccc73a6d1ef6557d762b">begin</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#ad2a9d4a491583d833ffc421a3913f982">common_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a5639cffd5495c9dd1a94cc2a4839fe9f">contains</a>(const entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a665b5a34eee656129ba04d718a98c05a">difference_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#acf2805f088e1f44931e00a4548782dce">end</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a206be195c1f69d1a06894af690b3f768">find</a>(const entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a94855cfbd9b0c88fdfb2161b0c5753bc">front</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a2aff92b331b0ca09fc2dc6006261fa2f">handle</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>internal::view_pack</b> (defined in <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a>)</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#ac1779f77c4f07bd1db2479b9557be325">iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#ae300d448aaf4ef7330fb7b635e5877a4">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a6455db81193b2e9ce830e2ed95ae0795">refresh</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#a4f4d649b5d2a9d823f93125450d38fc8">size_hint</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html#af8a47cbe23041f655e46986cd82f7e39">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+622
View File
@@ -0,0 +1,622 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__common__view.html">basic_common_view</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classentt_1_1basic__common__view-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Basic storage view implementation.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="view_8hpp_source.html">view.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ad2a9d4a491583d833ffc421a3913f982" id="r_ad2a9d4a491583d833ffc421a3913f982"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad2a9d4a491583d833ffc421a3913f982">common_type</a> = Type</td></tr>
<tr class="memdesc:ad2a9d4a491583d833ffc421a3913f982"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common type among all storage types. <br /></td></tr>
<tr class="separator:ad2a9d4a491583d833ffc421a3913f982"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a004edc23118d54d2074fe8a1a1cdd7" id="r_a2a004edc23118d54d2074fe8a1a1cdd7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a> = typename Type::entity_type</td></tr>
<tr class="memdesc:a2a004edc23118d54d2074fe8a1a1cdd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:a2a004edc23118d54d2074fe8a1a1cdd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8a47cbe23041f655e46986cd82f7e39" id="r_af8a47cbe23041f655e46986cd82f7e39"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af8a47cbe23041f655e46986cd82f7e39">size_type</a> = std::size_t</td></tr>
<tr class="memdesc:af8a47cbe23041f655e46986cd82f7e39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:af8a47cbe23041f655e46986cd82f7e39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a665b5a34eee656129ba04d718a98c05a" id="r_a665b5a34eee656129ba04d718a98c05a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a665b5a34eee656129ba04d718a98c05a">difference_type</a> = std::ptrdiff_t</td></tr>
<tr class="memdesc:a665b5a34eee656129ba04d718a98c05a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signed integer type. <br /></td></tr>
<tr class="separator:a665b5a34eee656129ba04d718a98c05a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1779f77c4f07bd1db2479b9557be325" id="r_ac1779f77c4f07bd1db2479b9557be325"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a> = internal::view_iterator&lt;<a class="el" href="#ad2a9d4a491583d833ffc421a3913f982">common_type</a>, Checked, Get, Exclude&gt;</td></tr>
<tr class="memdesc:ac1779f77c4f07bd1db2479b9557be325"><td class="mdescLeft">&#160;</td><td class="mdescRight">Forward iterator type. <br /></td></tr>
<tr class="separator:ac1779f77c4f07bd1db2479b9557be325"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a6455db81193b2e9ce830e2ed95ae0795" id="r_a6455db81193b2e9ce830e2ed95ae0795"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6455db81193b2e9ce830e2ed95ae0795">refresh</a> () noexcept</td></tr>
<tr class="memdesc:a6455db81193b2e9ce830e2ed95ae0795"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the internal leading view if required. <br /></td></tr>
<tr class="separator:a6455db81193b2e9ce830e2ed95ae0795"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aff92b331b0ca09fc2dc6006261fa2f" id="r_a2aff92b331b0ca09fc2dc6006261fa2f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="#ad2a9d4a491583d833ffc421a3913f982">common_type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2aff92b331b0ca09fc2dc6006261fa2f">handle</a> () const noexcept</td></tr>
<tr class="memdesc:a2aff92b331b0ca09fc2dc6006261fa2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the leading storage of a view, if any. <br /></td></tr>
<tr class="separator:a2aff92b331b0ca09fc2dc6006261fa2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f4d649b5d2a9d823f93125450d38fc8" id="r_a4f4d649b5d2a9d823f93125450d38fc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#af8a47cbe23041f655e46986cd82f7e39">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4f4d649b5d2a9d823f93125450d38fc8">size_hint</a> () const noexcept</td></tr>
<tr class="memdesc:a4f4d649b5d2a9d823f93125450d38fc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Estimates the number of entities iterated by the view. <br /></td></tr>
<tr class="separator:a4f4d649b5d2a9d823f93125450d38fc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2007dc390b50ccc73a6d1ef6557d762b" id="r_a2007dc390b50ccc73a6d1ef6557d762b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2007dc390b50ccc73a6d1ef6557d762b">begin</a> () const noexcept</td></tr>
<tr class="memdesc:a2007dc390b50ccc73a6d1ef6557d762b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the first entity of the view. <br /></td></tr>
<tr class="separator:a2007dc390b50ccc73a6d1ef6557d762b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf2805f088e1f44931e00a4548782dce" id="r_acf2805f088e1f44931e00a4548782dce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acf2805f088e1f44931e00a4548782dce">end</a> () const noexcept</td></tr>
<tr class="memdesc:acf2805f088e1f44931e00a4548782dce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator that is past the last entity of the view. <br /></td></tr>
<tr class="separator:acf2805f088e1f44931e00a4548782dce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94855cfbd9b0c88fdfb2161b0c5753bc" id="r_a94855cfbd9b0c88fdfb2161b0c5753bc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a94855cfbd9b0c88fdfb2161b0c5753bc">front</a> () const noexcept</td></tr>
<tr class="memdesc:a94855cfbd9b0c88fdfb2161b0c5753bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the first entity of the view, if any. <br /></td></tr>
<tr class="separator:a94855cfbd9b0c88fdfb2161b0c5753bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63c2d833d41810b5a5b28ecf653dc056" id="r_a63c2d833d41810b5a5b28ecf653dc056"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a63c2d833d41810b5a5b28ecf653dc056">back</a> () const noexcept</td></tr>
<tr class="memdesc:a63c2d833d41810b5a5b28ecf653dc056"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the last entity of the view, if any. <br /></td></tr>
<tr class="separator:a63c2d833d41810b5a5b28ecf653dc056"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a206be195c1f69d1a06894af690b3f768" id="r_a206be195c1f69d1a06894af690b3f768"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a206be195c1f69d1a06894af690b3f768">find</a> (const <a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a> entt) const noexcept</td></tr>
<tr class="memdesc:a206be195c1f69d1a06894af690b3f768"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds an entity. <br /></td></tr>
<tr class="separator:a206be195c1f69d1a06894af690b3f768"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae300d448aaf4ef7330fb7b635e5877a4" id="r_ae300d448aaf4ef7330fb7b635e5877a4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae300d448aaf4ef7330fb7b635e5877a4">operator bool</a> () const noexcept</td></tr>
<tr class="memdesc:ae300d448aaf4ef7330fb7b635e5877a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a view is fully initialized. <br /></td></tr>
<tr class="separator:ae300d448aaf4ef7330fb7b635e5877a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5639cffd5495c9dd1a94cc2a4839fe9f" id="r_a5639cffd5495c9dd1a94cc2a4839fe9f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5639cffd5495c9dd1a94cc2a4839fe9f">contains</a> (const <a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a> entt) const noexcept</td></tr>
<tr class="memdesc:a5639cffd5495c9dd1a94cc2a4839fe9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a view contains an entity. <br /></td></tr>
<tr class="separator:a5639cffd5495c9dd1a94cc2a4839fe9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:abff8fcdf8df88a44a818f57034d22e78" id="r_abff8fcdf8df88a44a818f57034d22e78"><td class="memTemplParams" colspan="2"><a id="abff8fcdf8df88a44a818f57034d22e78" name="abff8fcdf8df88a44a818f57034d22e78"></a>
template&lt;typename Return, typename View, typename Other, std::size_t... GLhs, std::size_t... ELhs, std::size_t... GRhs, std::size_t... ERhs&gt; </td></tr>
<tr class="memitem:abff8fcdf8df88a44a818f57034d22e78"><td class="memTemplItemLeft" align="right" valign="top">Return&#160;</td><td class="memTemplItemRight" valign="bottom"><b>internal::view_pack</b> (const View &amp;, const Other &amp;, std::index_sequence&lt; GLhs... &gt;, std::index_sequence&lt; ELhs... &gt;, std::index_sequence&lt; GRhs... &gt;, std::index_sequence&lt; ERhs... &gt;)</td></tr>
<tr class="separator:abff8fcdf8df88a44a818f57034d22e78"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt;<br />
class entt::basic_common_view&lt; Type, Checked, Get, Exclude &gt;</div><p>Basic storage view implementation. </p>
<dl class="section warning"><dt>Warning</dt><dd>For internal use only, backward compatibility not guaranteed. </dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Common type among all storage types. </td></tr>
<tr><td class="paramname">Checked</td><td>True to enable the tombstone check, false otherwise. </td></tr>
<tr><td class="paramname">Get</td><td>Number of storage iterated by the view. </td></tr>
<tr><td class="paramname">Exclude</td><td>Number of storage used to filter the view. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00233">233</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="ad2a9d4a491583d833ffc421a3913f982" name="ad2a9d4a491583d833ffc421a3913f982"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2a9d4a491583d833ffc421a3913f982">&#9670;&#160;</a></span>common_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::common_type = Type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Common type among all storage types. </p>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00301">301</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a665b5a34eee656129ba04d718a98c05a" name="a665b5a34eee656129ba04d718a98c05a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a665b5a34eee656129ba04d718a98c05a">&#9670;&#160;</a></span>difference_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::difference_type = std::ptrdiff_t</td>
</tr>
</table>
</div><div class="memdoc">
<p>Signed integer type. </p>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00307">307</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a2a004edc23118d54d2074fe8a1a1cdd7" name="a2a004edc23118d54d2074fe8a1a1cdd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a004edc23118d54d2074fe8a1a1cdd7">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::entity_type = typename Type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00303">303</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="ac1779f77c4f07bd1db2479b9557be325" name="ac1779f77c4f07bd1db2479b9557be325"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac1779f77c4f07bd1db2479b9557be325">&#9670;&#160;</a></span>iterator</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::iterator = internal::view_iterator&lt;<a class="el" href="#ad2a9d4a491583d833ffc421a3913f982">common_type</a>, Checked, Get, Exclude&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Forward iterator type. </p>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00309">309</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="af8a47cbe23041f655e46986cd82f7e39" name="af8a47cbe23041f655e46986cd82f7e39"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8a47cbe23041f655e46986cd82f7e39">&#9670;&#160;</a></span>size_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::size_type = std::size_t</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00305">305</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a63c2d833d41810b5a5b28ecf653dc056" name="a63c2d833d41810b5a5b28ecf653dc056"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63c2d833d41810b5a5b28ecf653dc056">&#9670;&#160;</a></span>back()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a> <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::back </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the last entity of the view, if any. </p>
<dl class="section return"><dt>Returns</dt><dd>The last entity of the view if one exists, the null entity otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00371">371</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a2007dc390b50ccc73a6d1ef6557d762b" name="a2007dc390b50ccc73a6d1ef6557d762b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2007dc390b50ccc73a6d1ef6557d762b">&#9670;&#160;</a></span>begin()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a> <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::begin </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the first entity of the view. </p>
<p>If the view is empty, the returned iterator will be equal to <code><a class="el" href="#acf2805f088e1f44931e00a4548782dce" title="Returns an iterator that is past the last entity of the view.">end()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first entity of the view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00344">344</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a5639cffd5495c9dd1a94cc2a4839fe9f" name="a5639cffd5495c9dd1a94cc2a4839fe9f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5639cffd5495c9dd1a94cc2a4839fe9f">&#9670;&#160;</a></span>contains()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::contains </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a></td> <td class="paramname"><span class="paramname"><em>entt</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if a view contains an entity. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the view contains the given entity, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00405">405</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="acf2805f088e1f44931e00a4548782dce" name="acf2805f088e1f44931e00a4548782dce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acf2805f088e1f44931e00a4548782dce">&#9670;&#160;</a></span>end()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a> <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::end </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator that is past the last entity of the view. </p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the entity following the last entity of the view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00352">352</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a206be195c1f69d1a06894af690b3f768" name="a206be195c1f69d1a06894af690b3f768"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a206be195c1f69d1a06894af690b3f768">&#9670;&#160;</a></span>find()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#ac1779f77c4f07bd1db2479b9557be325">iterator</a> <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::find </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a></td> <td class="paramname"><span class="paramname"><em>entt</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Finds an entity. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the given entity if it's found, past the end iterator otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00388">388</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a94855cfbd9b0c88fdfb2161b0c5753bc" name="a94855cfbd9b0c88fdfb2161b0c5753bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94855cfbd9b0c88fdfb2161b0c5753bc">&#9670;&#160;</a></span>front()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a2a004edc23118d54d2074fe8a1a1cdd7">entity_type</a> <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::front </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the first entity of the view, if any. </p>
<dl class="section return"><dt>Returns</dt><dd>The first entity of the view if one exists, the null entity otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00361">361</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a2aff92b331b0ca09fc2dc6006261fa2f" name="a2aff92b331b0ca09fc2dc6006261fa2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2aff92b331b0ca09fc2dc6006261fa2f">&#9670;&#160;</a></span>handle()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="#ad2a9d4a491583d833ffc421a3913f982">common_type</a> * <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::handle </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the leading storage of a view, if any. </p>
<dl class="section return"><dt>Returns</dt><dd>The leading storage of the view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00325">325</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="ae300d448aaf4ef7330fb7b635e5877a4" name="ae300d448aaf4ef7330fb7b635e5877a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae300d448aaf4ef7330fb7b635e5877a4">&#9670;&#160;</a></span>operator bool()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::operator bool </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if a view is fully initialized. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the view is fully initialized, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00396">396</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a6455db81193b2e9ce830e2ed95ae0795" name="a6455db81193b2e9ce830e2ed95ae0795"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6455db81193b2e9ce830e2ed95ae0795">&#9670;&#160;</a></span>refresh()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::refresh </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Updates the internal leading view if required. </p>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00312">312</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<a id="a4f4d649b5d2a9d823f93125450d38fc8" name="a4f4d649b5d2a9d823f93125450d38fc8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f4d649b5d2a9d823f93125450d38fc8">&#9670;&#160;</a></span>size_hint()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, bool Checked, std::size_t Get, std::size_t Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#af8a47cbe23041f655e46986cd82f7e39">size_type</a> <a class="el" href="classentt_1_1basic__common__view.html">entt::basic_common_view</a>&lt; Type, Checked, Get, Exclude &gt;::size_hint </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Estimates the number of entities iterated by the view. </p>
<dl class="section return"><dt>Returns</dt><dd>Estimated number of entities iterated by the view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="view_8hpp_source.html#l00333">333</a> of file <a class="el" href="view_8hpp_source.html">view.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/entt/entity/<a class="el" href="view_8hpp_source.html">view.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,116 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_continuous_loader&lt; Registry &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#a4546c59ad6f12d4c071e99215790873f">basic_continuous_loader</a>(registry_type &amp;source) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#a251ef8adbb329c667b5fe1857bac0078">basic_continuous_loader</a>(const basic_continuous_loader &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#a5e29f22ee49b992ea16d352d3f1041d9">basic_continuous_loader</a>(basic_continuous_loader &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#ab682c079d9ddf61f04e121d6fab421d7">contains</a>(entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#ad4962b919dc91a9f6dfc223bcf983376">get</a>(Archive &amp;archive, const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#ac243f6a783ffe8839fd864d887ea0153">map</a>(entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#a55ad0d865e74ea3d53cd67812fe2c4e1">operator=</a>(const basic_continuous_loader &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#ade392e168f1b045c70608544283ff7cc">operator=</a>(basic_continuous_loader &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#ae497e30cd8fa96978a067bb0f4dee5cd">orphans</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#ae51ed38dcfbae0c059aeed260b4d7dee">registry_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html#a34d2417a1dc1fe8804ff6bbe184e16a1">~basic_continuous_loader</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader&lt; Registry &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+477
View File
@@ -0,0 +1,477 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_continuous_loader&lt; Registry &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1basic__continuous__loader-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_continuous_loader&lt; Registry &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Utility class for <em>continuous loading</em>.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ae51ed38dcfbae0c059aeed260b4d7dee" id="r_ae51ed38dcfbae0c059aeed260b4d7dee"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae51ed38dcfbae0c059aeed260b4d7dee">registry_type</a> = Registry</td></tr>
<tr class="separator:ae51ed38dcfbae0c059aeed260b4d7dee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ec9043a725da1ddb4f16ce6cb635011" id="r_a8ec9043a725da1ddb4f16ce6cb635011"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a> = typename registry_type::entity_type</td></tr>
<tr class="memdesc:a8ec9043a725da1ddb4f16ce6cb635011"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:a8ec9043a725da1ddb4f16ce6cb635011"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4546c59ad6f12d4c071e99215790873f" id="r_a4546c59ad6f12d4c071e99215790873f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4546c59ad6f12d4c071e99215790873f">basic_continuous_loader</a> (<a class="el" href="#ae51ed38dcfbae0c059aeed260b4d7dee">registry_type</a> &amp;source) noexcept</td></tr>
<tr class="memdesc:a4546c59ad6f12d4c071e99215790873f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an instance that is bound to a given registry. <br /></td></tr>
<tr class="separator:a4546c59ad6f12d4c071e99215790873f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a251ef8adbb329c667b5fe1857bac0078" id="r_a251ef8adbb329c667b5fe1857bac0078"><td class="memItemLeft" align="right" valign="top"><a id="a251ef8adbb329c667b5fe1857bac0078" name="a251ef8adbb329c667b5fe1857bac0078"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_continuous_loader</b> (const <a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;)=delete</td></tr>
<tr class="memdesc:a251ef8adbb329c667b5fe1857bac0078"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy constructor, deleted on purpose. <br /></td></tr>
<tr class="separator:a251ef8adbb329c667b5fe1857bac0078"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e29f22ee49b992ea16d352d3f1041d9" id="r_a5e29f22ee49b992ea16d352d3f1041d9"><td class="memItemLeft" align="right" valign="top"><a id="a5e29f22ee49b992ea16d352d3f1041d9" name="a5e29f22ee49b992ea16d352d3f1041d9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_continuous_loader</b> (<a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;&amp;) noexcept=default</td></tr>
<tr class="memdesc:a5e29f22ee49b992ea16d352d3f1041d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move constructor. <br /></td></tr>
<tr class="separator:a5e29f22ee49b992ea16d352d3f1041d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34d2417a1dc1fe8804ff6bbe184e16a1" id="r_a34d2417a1dc1fe8804ff6bbe184e16a1"><td class="memItemLeft" align="right" valign="top"><a id="a34d2417a1dc1fe8804ff6bbe184e16a1" name="a34d2417a1dc1fe8804ff6bbe184e16a1"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>~basic_continuous_loader</b> ()=default</td></tr>
<tr class="memdesc:a34d2417a1dc1fe8804ff6bbe184e16a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:a34d2417a1dc1fe8804ff6bbe184e16a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55ad0d865e74ea3d53cd67812fe2c4e1" id="r_a55ad0d865e74ea3d53cd67812fe2c4e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a55ad0d865e74ea3d53cd67812fe2c4e1">operator=</a> (const <a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;)=delete</td></tr>
<tr class="memdesc:a55ad0d865e74ea3d53cd67812fe2c4e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy assignment operator, deleted on purpose. <br /></td></tr>
<tr class="separator:a55ad0d865e74ea3d53cd67812fe2c4e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade392e168f1b045c70608544283ff7cc" id="r_ade392e168f1b045c70608544283ff7cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ade392e168f1b045c70608544283ff7cc">operator=</a> (<a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;&amp;) noexcept=default</td></tr>
<tr class="memdesc:ade392e168f1b045c70608544283ff7cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move assignment operator. <br /></td></tr>
<tr class="separator:ade392e168f1b045c70608544283ff7cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4962b919dc91a9f6dfc223bcf983376" id="r_ad4962b919dc91a9f6dfc223bcf983376"><td class="memTemplParams" colspan="2">template&lt;typename Type, typename Archive&gt; </td></tr>
<tr class="memitem:ad4962b919dc91a9f6dfc223bcf983376"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ad4962b919dc91a9f6dfc223bcf983376">get</a> (Archive &amp;archive, const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> id=<a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt; Type &gt;::value())</td></tr>
<tr class="memdesc:ad4962b919dc91a9f6dfc223bcf983376"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restores all elements of a type with associated identifiers. <br /></td></tr>
<tr class="separator:ad4962b919dc91a9f6dfc223bcf983376"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae497e30cd8fa96978a067bb0f4dee5cd" id="r_ae497e30cd8fa96978a067bb0f4dee5cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae497e30cd8fa96978a067bb0f4dee5cd">orphans</a> ()</td></tr>
<tr class="memdesc:ae497e30cd8fa96978a067bb0f4dee5cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys those entities that have no elements. <br /></td></tr>
<tr class="separator:ae497e30cd8fa96978a067bb0f4dee5cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab682c079d9ddf61f04e121d6fab421d7" id="r_ab682c079d9ddf61f04e121d6fab421d7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab682c079d9ddf61f04e121d6fab421d7">contains</a> (<a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a> entt) const noexcept</td></tr>
<tr class="memdesc:ab682c079d9ddf61f04e121d6fab421d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests if a loader knows about a given entity. <br /></td></tr>
<tr class="separator:ab682c079d9ddf61f04e121d6fab421d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac243f6a783ffe8839fd864d887ea0153" id="r_ac243f6a783ffe8839fd864d887ea0153"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac243f6a783ffe8839fd864d887ea0153">map</a> (<a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a> entt) const noexcept</td></tr>
<tr class="memdesc:ac243f6a783ffe8839fd864d887ea0153"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the identifier to which an entity refers. <br /></td></tr>
<tr class="separator:ac243f6a783ffe8839fd864d887ea0153"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Registry&gt;<br />
class entt::basic_continuous_loader&lt; Registry &gt;</div><p>Utility class for <em>continuous loading</em>. </p>
<p>A <em>continuous loader</em> is designed to load data from a source registry to a (possibly) non-empty destination. The loader can accommodate in a registry more than one snapshot in a sort of <em>continuous loading</em> that updates the destination one step at a time.<br />
Identifiers that entities originally had are not transferred to the target. Instead, the loader maps remote identifiers to local ones while restoring a snapshot.<br />
An example of use is the implementation of a client-server application with the requirement of transferring somehow parts of the representation side to side.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Registry</td><td>Basic registry type. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00306">306</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a8ec9043a725da1ddb4f16ce6cb635011" name="a8ec9043a725da1ddb4f16ce6cb635011"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ec9043a725da1ddb4f16ce6cb635011">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::entity_type = typename registry_type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00369">369</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<a id="ae51ed38dcfbae0c059aeed260b4d7dee" name="ae51ed38dcfbae0c059aeed260b4d7dee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae51ed38dcfbae0c059aeed260b4d7dee">&#9670;&#160;</a></span>registry_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::registry_type = Registry</td>
</tr>
</table>
</div><div class="memdoc">
<p>Basic registry type. </p>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00367">367</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4546c59ad6f12d4c071e99215790873f" name="a4546c59ad6f12d4c071e99215790873f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4546c59ad6f12d4c071e99215790873f">&#9670;&#160;</a></span>basic_continuous_loader()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::basic_continuous_loader </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#ae51ed38dcfbae0c059aeed260b4d7dee">registry_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>source</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an instance that is bound to a given registry. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">source</td><td>A valid reference to a registry. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00375">375</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab682c079d9ddf61f04e121d6fab421d7" name="ab682c079d9ddf61f04e121d6fab421d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab682c079d9ddf61f04e121d6fab421d7">&#9670;&#160;</a></span>contains()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::contains </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a></td> <td class="paramname"><span class="paramname"><em>entt</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Tests if a loader knows about a given entity. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if <code>entity</code> is managed by the loader, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00487">487</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<a id="ad4962b919dc91a9f6dfc223bcf983376" name="ad4962b919dc91a9f6dfc223bcf983376"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4962b919dc91a9f6dfc223bcf983376">&#9670;&#160;</a></span>get()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename Type, typename Archive&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp; <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::get </td>
<td>(</td>
<td class="paramtype">Archive &amp;</td> <td class="paramname"><span class="paramname"><em>archive</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a></td> <td class="paramname"><span class="paramname"><em>id</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt;Type&gt;::value()</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Restores all elements of a type with associated identifiers. </p>
<p>It creates local counterparts for remote elements as needed.<br />
Members are either data members of type <a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011" title="Underlying entity identifier.">entity_type</a> or containers of entities. In both cases, a loader visits them and replaces entities with their local counterpart.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of elements to restore. </td></tr>
<tr><td class="paramname">Archive</td><td>Type of input archive. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">archive</td><td>A valid reference to an input archive. </td></tr>
<tr><td class="paramname">id</td><td>Optional name used to map the storage within the registry. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A valid loader to continue restoring data. </dd></dl>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00415">415</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<a id="ac243f6a783ffe8839fd864d887ea0153" name="ac243f6a783ffe8839fd864d887ea0153"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac243f6a783ffe8839fd864d887ea0153">&#9670;&#160;</a></span>map()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a> <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::map </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#a8ec9043a725da1ddb4f16ce6cb635011">entity_type</a></td> <td class="paramname"><span class="paramname"><em>entt</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the identifier to which an entity refers. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The local identifier if any, the null entity otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00497">497</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<a id="ade392e168f1b045c70608544283ff7cc" name="ade392e168f1b045c70608544283ff7cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade392e168f1b045c70608544283ff7cc">&#9670;&#160;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp; <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a>&lt; Registry &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel default">default</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default move assignment operator. </p>
<dl class="section return"><dt>Returns</dt><dd>This loader. </dd></dl>
</div>
</div>
<a id="a55ad0d865e74ea3d53cd67812fe2c4e1" name="a55ad0d865e74ea3d53cd67812fe2c4e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55ad0d865e74ea3d53cd67812fe2c4e1">&#9670;&#160;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp; <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a>&lt; Registry &gt; &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel delete">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default copy assignment operator, deleted on purpose. </p>
<dl class="section return"><dt>Returns</dt><dd>This loader. </dd></dl>
</div>
</div>
<a id="ae497e30cd8fa96978a067bb0f4dee5cd" name="ae497e30cd8fa96978a067bb0f4dee5cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae497e30cd8fa96978a067bb0f4dee5cd">&#9670;&#160;</a></span>orphans()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__continuous__loader.html">basic_continuous_loader</a> &amp; <a class="el" href="classentt_1_1basic__continuous__loader.html">entt::basic_continuous_loader</a>&lt; Registry &gt;::orphans </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroys those entities that have no elements. </p>
<p>In case all the entities were serialized but only part of the elements was saved, it could happen that some of the entities have no elements once restored.<br />
This function helps to identify and destroy those entities.</p>
<dl class="section return"><dt>Returns</dt><dd>A non-const reference to this loader. </dd></dl>
<p class="definition">Definition at line <a class="el" href="snapshot_8hpp_source.html#l00477">477</a> of file <a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/entity/<a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/entity/<a class="el" href="snapshot_8hpp_source.html">snapshot.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+131
View File
@@ -0,0 +1,131 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__dispatcher.html">basic_dispatcher</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_dispatcher&lt; Allocator &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a25129aec45c14bb934e9e9db3ed28015">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#ad479b016e5261d80b30c25a540cc4fbd">basic_dispatcher</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#ad9f651ee2a41ecf134790e203d4f3654">basic_dispatcher</a>(const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#aa8ea67b22aed27899dcba5c9d27ddbbb">basic_dispatcher</a>(const basic_dispatcher &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a942a4de622068676062ee1e47e9ef275">basic_dispatcher</a>(basic_dispatcher &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a30ee1d0e53506ccde1d3f5411411380c">basic_dispatcher</a>(basic_dispatcher &amp;&amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a02c856afb5d117366cc81543bece0cc8">clear</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a1d149a28b16f00d36400022d5eb5546a">clear</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a6d3929fa7b3de337091f4305a564ba75">disconnect</a>(Type &amp;value_or_instance)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#adb5bc2c8ef847a296fe66c230f84569b">disconnect</a>(Type *value_or_instance)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#aefeb6cfbb14cf16ad7bee0148a324867">enqueue</a>(Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a3c13ef83ea854d2b974b9a6029064294">enqueue</a>(Type &amp;&amp;value)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a3da25e303527faa6f57616a077333681">enqueue_hint</a>(const id_type id, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a223faf63a62726619ff0140d659037ee">enqueue_hint</a>(const id_type id, Type &amp;&amp;value)</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#ad2491b6dfbb3fc48624e0765cfac8cc1">get_allocator</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a9f55a869d2cd940755cec8e6aefa96e9">operator=</a>(const basic_dispatcher &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#ae743b9211b995d86eec1fba117fc9799">operator=</a>(basic_dispatcher &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a2e76cd8379d9783423255c5d849dfd84">sink</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a8259e6ff1cd028e2f498a47e7d594543">size</a>(const id_type id=type_hash&lt; Type &gt;::value()) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a568be9cdf0161098e8c87c5d7d924aca">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a5be4fb80f4bb0055ffaf3b573a4681a6">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a1bede4933d9946b4cbb27d409102bf1f">swap</a>(basic_dispatcher &amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a106d465a66d82cfa2e664f0e14b498e3">trigger</a>(Type &amp;&amp;value={})</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a960ab280a72087de8077351ca8a3dbc8">trigger</a>(const id_type id, Type &amp;&amp;value={})</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a7d0b2fc6d403b187f112798823c870dc">update</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#a34b8c43b1d00707b09e9ea8cd53ff3fd">update</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html#aa696c543875d16b4b94ce7966f919844">~basic_dispatcher</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1basic__dispatcher.html">entt::basic_dispatcher&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,115 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__entt__traits.html">basic_entt_traits</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_entt_traits&lt; Traits &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#ad00358aea03a19c59efae2f8c005ae9b">combine</a>(const entity_type lhs, const entity_type rhs) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a3d3c3e8fd538fb4394ea505dd0415ec5">construct</a>(const entity_type entity, const version_type version) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a6b93920c3b3347171c485fdbdead14ec">entity_mask</a></td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a066f3db5d13496df1e1fbc8659197793">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a42a94cfb5923165804979505731ad7c6">next</a>(const value_type value) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a8c02bc8db33817ec509b7d32773fa463">to_entity</a>(const value_type value) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a4eb435084cf47d4fbc840654f2e8c9e0">to_integral</a>(const value_type value) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#af1e3c418f09660a761fab21078df6700">to_version</a>(const value_type value) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#a0bd49c229b049ac5dc0fb21195b4bcc3">version_mask</a></td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html#aa3fe33d19b228d07c5560b907f910c10">version_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits&lt; Traits &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+540
View File
@@ -0,0 +1,540 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_entt_traits&lt; Traits &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__entt__traits.html">basic_entt_traits</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="classentt_1_1basic__entt__traits-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_entt_traits&lt; Traits &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Common basic entity traits implementation.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="entity_8hpp_source.html">entity.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for entt::basic_entt_traits&lt; Traits &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__entt__traits__inherit__graph.png" border="0" usemap="#aentt_1_1basic__entt__traits_3_01Traits_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="aentt_1_1basic__entt__traits_3_01Traits_01_4_inherit__map" id="aentt_1_1basic__entt__traits_3_01Traits_01_4_inherit__map">
<area shape="rect" title="Common basic entity traits implementation." alt="" coords="80,5,228,45"/>
<area shape="rect" href="structentt_1_1entt__traits.html" title=" " alt="" coords="5,93,148,148"/>
<area shape="poly" title=" " alt="" coords="132,58,100,95,96,92,128,54"/>
<area shape="rect" href="structentt_1_1entt__traits.html" title=" " alt="" coords="172,101,291,141"/>
<area shape="poly" title=" " alt="" coords="180,54,218,99,214,102,176,58"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a8d3ccdc302fc7dc567541fa12eca6b4e" id="r_a8d3ccdc302fc7dc567541fa12eca6b4e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> = typename Traits::value_type</td></tr>
<tr class="memdesc:a8d3ccdc302fc7dc567541fa12eca6b4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value type. <br /></td></tr>
<tr class="separator:a8d3ccdc302fc7dc567541fa12eca6b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a066f3db5d13496df1e1fbc8659197793" id="r_a066f3db5d13496df1e1fbc8659197793"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> = typename Traits::entity_type</td></tr>
<tr class="memdesc:a066f3db5d13496df1e1fbc8659197793"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity type. <br /></td></tr>
<tr class="separator:a066f3db5d13496df1e1fbc8659197793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3fe33d19b228d07c5560b907f910c10" id="r_aa3fe33d19b228d07c5560b907f910c10"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa3fe33d19b228d07c5560b907f910c10">version_type</a> = typename Traits::version_type</td></tr>
<tr class="memdesc:aa3fe33d19b228d07c5560b907f910c10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying version type. <br /></td></tr>
<tr class="separator:aa3fe33d19b228d07c5560b907f910c10"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a4eb435084cf47d4fbc840654f2e8c9e0" id="r_a4eb435084cf47d4fbc840654f2e8c9e0"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4eb435084cf47d4fbc840654f2e8c9e0">to_integral</a> (const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> value) noexcept</td></tr>
<tr class="memdesc:a4eb435084cf47d4fbc840654f2e8c9e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an entity to its underlying type. <br /></td></tr>
<tr class="separator:a4eb435084cf47d4fbc840654f2e8c9e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c02bc8db33817ec509b7d32773fa463" id="r_a8c02bc8db33817ec509b7d32773fa463"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8c02bc8db33817ec509b7d32773fa463">to_entity</a> (const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> value) noexcept</td></tr>
<tr class="memdesc:a8c02bc8db33817ec509b7d32773fa463"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the entity part once converted to the underlying type. <br /></td></tr>
<tr class="separator:a8c02bc8db33817ec509b7d32773fa463"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1e3c418f09660a761fab21078df6700" id="r_af1e3c418f09660a761fab21078df6700"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#aa3fe33d19b228d07c5560b907f910c10">version_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af1e3c418f09660a761fab21078df6700">to_version</a> (const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> value) noexcept</td></tr>
<tr class="memdesc:af1e3c418f09660a761fab21078df6700"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the version part once converted to the underlying type. <br /></td></tr>
<tr class="separator:af1e3c418f09660a761fab21078df6700"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42a94cfb5923165804979505731ad7c6" id="r_a42a94cfb5923165804979505731ad7c6"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a42a94cfb5923165804979505731ad7c6">next</a> (const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> value) noexcept</td></tr>
<tr class="memdesc:a42a94cfb5923165804979505731ad7c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the successor of a given identifier. <br /></td></tr>
<tr class="separator:a42a94cfb5923165804979505731ad7c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d3c3e8fd538fb4394ea505dd0415ec5" id="r_a3d3c3e8fd538fb4394ea505dd0415ec5"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3d3c3e8fd538fb4394ea505dd0415ec5">construct</a> (const <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> <a class="el" href="namespaceentt.html#a0b54e231d069e8a231e14b223388808a">entity</a>, const <a class="el" href="#aa3fe33d19b228d07c5560b907f910c10">version_type</a> version) noexcept</td></tr>
<tr class="memdesc:a3d3c3e8fd538fb4394ea505dd0415ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an identifier from its parts. <br /></td></tr>
<tr class="separator:a3d3c3e8fd538fb4394ea505dd0415ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad00358aea03a19c59efae2f8c005ae9b" id="r_ad00358aea03a19c59efae2f8c005ae9b"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad00358aea03a19c59efae2f8c005ae9b">combine</a> (const <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> lhs, const <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> rhs) noexcept</td></tr>
<tr class="memdesc:ad00358aea03a19c59efae2f8c005ae9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Combines two identifiers in a single one. <br /></td></tr>
<tr class="separator:ad00358aea03a19c59efae2f8c005ae9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-attribs" name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a6b93920c3b3347171c485fdbdead14ec" id="r_a6b93920c3b3347171c485fdbdead14ec"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6b93920c3b3347171c485fdbdead14ec">entity_mask</a> = Traits::entity_mask</td></tr>
<tr class="memdesc:a6b93920c3b3347171c485fdbdead14ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Entity mask size. <br /></td></tr>
<tr class="separator:a6b93920c3b3347171c485fdbdead14ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bd49c229b049ac5dc0fb21195b4bcc3" id="r_a0bd49c229b049ac5dc0fb21195b4bcc3"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0bd49c229b049ac5dc0fb21195b4bcc3">version_mask</a> = Traits::version_mask</td></tr>
<tr class="memdesc:a0bd49c229b049ac5dc0fb21195b4bcc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Version mask size. <br /></td></tr>
<tr class="separator:a0bd49c229b049ac5dc0fb21195b4bcc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Traits&gt;<br />
class entt::basic_entt_traits&lt; Traits &gt;</div><p>Common basic entity traits implementation. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Traits</td><td>Actual entity traits to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00061">61</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a066f3db5d13496df1e1fbc8659197793" name="a066f3db5d13496df1e1fbc8659197793"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a066f3db5d13496df1e1fbc8659197793">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::entity_type = typename Traits::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity type. </p>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00071">71</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="a8d3ccdc302fc7dc567541fa12eca6b4e" name="a8d3ccdc302fc7dc567541fa12eca6b4e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d3ccdc302fc7dc567541fa12eca6b4e">&#9670;&#160;</a></span>value_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::value_type = typename Traits::value_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Value type. </p>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00069">69</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="aa3fe33d19b228d07c5560b907f910c10" name="aa3fe33d19b228d07c5560b907f910c10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3fe33d19b228d07c5560b907f910c10">&#9670;&#160;</a></span>version_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::version_type = typename Traits::version_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying version type. </p>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00073">73</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad00358aea03a19c59efae2f8c005ae9b" name="ad00358aea03a19c59efae2f8c005ae9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad00358aea03a19c59efae2f8c005ae9b">&#9670;&#160;</a></span>combine()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::combine </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a></td> <td class="paramname"><span class="paramname"><em>lhs</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a></td> <td class="paramname"><span class="paramname"><em>rhs</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Combines two identifiers in a single one. </p>
<p>The returned identifier is a copy of the first element except for its version, which is taken from the second element.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lhs</td><td>The identifier from which to take the entity part. </td></tr>
<tr><td class="paramname">rhs</td><td>The identifier from which to take the version part. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A properly constructed identifier. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00149">149</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="a3d3c3e8fd538fb4394ea505dd0415ec5" name="a3d3c3e8fd538fb4394ea505dd0415ec5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d3c3e8fd538fb4394ea505dd0415ec5">&#9670;&#160;</a></span>construct()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::construct </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a></td> <td class="paramname"><span class="paramname"><em>entity</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#aa3fe33d19b228d07c5560b907f910c10">version_type</a></td> <td class="paramname"><span class="paramname"><em>version</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an identifier from its parts. </p>
<p>If the version part is not provided, a tombstone is returned.<br />
If the entity part is not provided, a null identifier is returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entity</td><td>The entity part of the identifier. </td></tr>
<tr><td class="paramname">version</td><td>The version part of the identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A properly constructed identifier. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00131">131</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="a42a94cfb5923165804979505731ad7c6" name="a42a94cfb5923165804979505731ad7c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42a94cfb5923165804979505731ad7c6">&#9670;&#160;</a></span>next()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::next </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a></td> <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the successor of a given identifier. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>The identifier of which to return the successor. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The successor of the given identifier. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00116">116</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="a8c02bc8db33817ec509b7d32773fa463" name="a8c02bc8db33817ec509b7d32773fa463"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c02bc8db33817ec509b7d32773fa463">&#9670;&#160;</a></span>to_entity()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::to_entity </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a></td> <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the entity part once converted to the underlying type. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>The value to convert. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The integral representation of the entity part. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00094">94</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="a4eb435084cf47d4fbc840654f2e8c9e0" name="a4eb435084cf47d4fbc840654f2e8c9e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4eb435084cf47d4fbc840654f2e8c9e0">&#9670;&#160;</a></span>to_integral()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::to_integral </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a></td> <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Converts an entity to its underlying type. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>The value to convert. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The integral representation of the given value. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00085">85</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="af1e3c418f09660a761fab21078df6700" name="af1e3c418f09660a761fab21078df6700"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1e3c418f09660a761fab21078df6700">&#9670;&#160;</a></span>to_version()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#aa3fe33d19b228d07c5560b907f910c10">version_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::to_version </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a8d3ccdc302fc7dc567541fa12eca6b4e">value_type</a></td> <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the version part once converted to the underlying type. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>The value to convert. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The integral representation of the version part. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00103">103</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a6b93920c3b3347171c485fdbdead14ec" name="a6b93920c3b3347171c485fdbdead14ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b93920c3b3347171c485fdbdead14ec">&#9670;&#160;</a></span>entity_mask</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::entity_mask = Traits::entity_mask</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel static">static</span><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Entity mask size. </p>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00076">76</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<a id="a0bd49c229b049ac5dc0fb21195b4bcc3" name="a0bd49c229b049ac5dc0fb21195b4bcc3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0bd49c229b049ac5dc0fb21195b4bcc3">&#9670;&#160;</a></span>version_mask</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Traits&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a066f3db5d13496df1e1fbc8659197793">entity_type</a> <a class="el" href="classentt_1_1basic__entt__traits.html">entt::basic_entt_traits</a>&lt; Traits &gt;::version_mask = Traits::version_mask</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel static">static</span><span class="mlabel constexpr">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Version mask size. </p>
<p class="definition">Definition at line <a class="el" href="entity_8hpp_source.html#l00078">78</a> of file <a class="el" href="entity_8hpp_source.html">entity.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/entt/entity/<a class="el" href="entity_8hpp_source.html">entity.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,7 @@
<map id="entt::basic_entt_traits&lt; Traits &gt;" name="entt::basic_entt_traits&lt; Traits &gt;">
<area shape="rect" id="Node000001" title="Common basic entity traits implementation." alt="" coords="80,5,228,45"/>
<area shape="rect" id="Node000002" href="$structentt_1_1entt__traits.html" title=" " alt="" coords="5,93,148,148"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="132,58,100,95,96,92,128,54"/>
<area shape="rect" id="Node000003" href="$structentt_1_1entt__traits.html" title=" " alt="" coords="172,101,291,141"/>
<area shape="poly" id="edge2_Node000001_Node000003" title=" " alt="" coords="180,54,218,99,214,102,176,58"/>
</map>
@@ -0,0 +1 @@
104e4f0540f4960d20f4a0e3ef8e9ed6
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

+131
View File
@@ -0,0 +1,131 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__flow.html">basic_flow</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_flow&lt; Allocator &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a37b19d1bb36d762cea9163ad7bb8bfc2">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#aca29e5858a6863940a79eba950791eaf">basic_flow</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a51a89fc2a993298d4a95f7b01381d094">basic_flow</a>(const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#afe89940ee2068832234ab76baa26d192">basic_flow</a>(const basic_flow &amp;)=default</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#acf8c4ee6fd75933eb7f1a6deae169c00">basic_flow</a>(const basic_flow &amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a77e9b92d33be504cca952abca68f8611">basic_flow</a>(basic_flow &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a7ade1aff980a5d137cdb746976702b40">basic_flow</a>(basic_flow &amp;&amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a81236828df07e39e44a200debdd98a78">bind</a>(const id_type value)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a07719c4e2fa4e79f7381a7a3d30d75f2">clear</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#ae34f6cde54ad1b268a41a822adabdf84">empty</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a49e335a9671725195bfe923e6e39a413">get_allocator</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a5077f0aef10e4e9b898b6b7df36ccb39">graph</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a552d8b3474416c8a9ce91377359b5bd0">graph_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a40ae2917753dbe694ccbd8a0b9d030e4">iterable</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#aede173e1874fb7302bf87dc42ec3dfc8">operator=</a>(const basic_flow &amp;)=default</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#abc4820f568a811f5c7f0557dc08d1233">operator=</a>(basic_flow &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a12d419b34b81caf99d8e15e7fcb07316">operator[]</a>(const size_type pos) const</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a6dc864b3c520bd35b1ac981994e9fed6">ro</a>(const id_type res)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#ae99ad5bb02e38f1aa5f9ffcda69ec64c">ro</a>(It first, It last)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a44a03612c6cc4437314c14bdda0fa5dd">rw</a>(const id_type res)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a48ba1ecbcfbbd8c8eb97ed2a426fedfe">rw</a>(It first, It last)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#aacd49b1f55957518b411e32cf77cf31b">set</a>(const id_type res, bool is_rw=false)</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a3cc2765c64e15d244a23b33bf45463e3">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a42c0ae982887ab754f6119467ecbd543">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#adc54472d1ab42909e262b854d0920c3d">swap</a>(basic_flow &amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a43e28c91d03bb3ebcce6d3b171d75a98">sync</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__flow.html#a5c3eb8689a39e6c8ce6d33b1ed21dd50">~basic_flow</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1basic__flow.html">entt::basic_flow&lt; Allocator &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
File diff suppressed because it is too large Load Diff
+113
View File
@@ -0,0 +1,113 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_group&lt; typename, typename, typename &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__group.html">basic_group</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_group&lt; typename, typename, typename &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Group.
<a href="#details">More...</a></p>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename, typename, typename&gt;<br />
class entt::basic_group&lt; typename, typename, typename &gt;</div><p>Group. </p>
<p>Primary template isn't defined on purpose. All the specializations give a compile-time error, but for a few reasonable cases. </p>
<p class="definition">Definition at line <a class="el" href="entity_2fwd_8hpp_source.html#l00053">53</a> of file <a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a>.</p>
</div><hr/>The documentation for this class was generated from the following file:<ul>
<li>src/entt/entity/<a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,136 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a3a32cd6d22bd3a4a5e1b99a13da02ad1">back</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a181467a35167330707fbe2ad94a60e57">basic_group</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a891037fd8c4d3d4eb6dca94ebbd0ab74">basic_group</a>(handler &amp;ref) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a3fd2db6528ee4a5e14f96dd6b0f38769">begin</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a51f55ba9c65468ef4f615fae26b881d7">common_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a7c8602aabac11b094162e687a7a07668">contains</a>(const entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ace5500fb779bdb6d757061b1abb8c144">difference_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a02d082ed4b5d573c6b79644383f5f838">each</a>(Func func) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#aa30df55e12ed00f3e90ec23bd25595e2">each</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ae4ac68edd780bdec355ef654fd9bd1fd">empty</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a99c4a0d307973232a293a83e85d578f5">end</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#abb8a3829dcd9e0699bb39e52ba42c9c1">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a656bae2e26463cc4600b1767b54bb369">find</a>(const entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a824f21536b1352d744fdfcee94d79c8c">front</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a0cc40a8d9473eace55d248be609671a7">get</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ad3fe15acceec2e1d20c222919ec30441">get</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ae1cc1b088c5625d4fc991a35d959995d">group_id</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a02195bbadcbe2f41854c7dc0a0a178e1">handle</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a5ebb7fc96e20ebb95ce3af127983f296">handler</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ae4e52d1b38e4284b76bc51a72cb0b8c3">iterable</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a611925e5ae41497d06519a40aaabdc64">iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ac4a67ec8ec5c496f331e10a01acf7ef8">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a9c8624960249235714926777c1b4423e">operator[]</a>(const size_type pos) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#adbfcd5c0d456b00a2265ad54bf7855aa">rbegin</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#aa7d0eecd17174df1ae26f59939023c7e">rend</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a9bc92cfc49d8a5f02420f9d5ed3f086e">reverse_iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#aa30cf23333313f4b6c636d64b8798bfd">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a4e34173909e85aa6ce57d1e21359ca60">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#ab1b8ab19edaaf721ba3f5db9b6dcab55">sort</a>(Compare compare, Sort algo=Sort{}, Args &amp;&amp;...args) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#afb19e07ca3440d9e7850aa888119cb63">sort</a>(Compare compare, Sort algo=Sort{}, Args &amp;&amp;...args) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a544a600146d8e1a23d7233ef0447198f">storage</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html#a544a600146d8e1a23d7233ef0447198f">storage</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_01Owned_8_8_8_01_4_00_01get__t_3_01Get_8_8_8_01_4_00_011bc3c06bb47de7bb72ca45b6e209ac72.html">entt::basic_group&lt; owned_t&lt; Owned... &gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,139 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ad23be7c83702338af05db3fd851a4a1b">back</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#af0007b6e275808ca8037551a4133a0b8">basic_group</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a2048d3e38b1ef64777a701d4a9e1a92d">basic_group</a>(handler &amp;ref) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a02df8d2cc8e492f0faa1b8218591f258">begin</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#aaec4bf1c339ee706c1e382f81e995116">capacity</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ae404710a7c3d6d5ca6b2066d0bffea07">common_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a38f5f9228661385295bc7a576fb187fe">contains</a>(const entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a66cfc4cf7cc6ded38267f92436256904">difference_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a7a9e949db960db1c091f7042b6829026">each</a>(Func func) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#adc11363d541605654bf66ed62f5359eb">each</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a64e489bb00e091fd7203d91b5d1aaf5a">empty</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ac94857c70d27826612b584af4c70f200">end</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ac52f9ee1f7aab92da230399fba664480">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ac63cc46269cc44038dee7f51a3663342">find</a>(const entity_type entt) const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ab5ba983fbaee1dce61af5edeb3872ecd">front</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a507bcb4508ac957e96be3b4691633aa9">get</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a8a9d3d57c43e454d991d1c7c85752cd9">get</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a1087af5249eb3f2049610ae8d0b07bd7">group_id</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a4d5bfe2db9bebc127208c2d19e4731f6">handle</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ac308d47ad733d64e47937a9e9a3be3e2">handler</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a41dc2207369df205d0776db3e78be604">iterable</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#acd96ed39873cbcb38100928945e5781f">iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a5032823e971e2da23bacae135c78fbd2">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a38ee47145fc3fcb63ab0a80250f43a55">operator[]</a>(const size_type pos) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a3c52657f3305d9076c8859df5e2792f2">rbegin</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#abfbf1ce09751a74c56743688c7769f99">rend</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a1f1ebbcf7774e04d4ecc91b6b5a14469">reverse_iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#ab0dee7a4e6589ce4a1bdec06a38f3e59">shrink_to_fit</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#afd8a5c5072abffebe052dd8f1eeb7411">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a9097b3db0054d341d6dbb31a8531b6f4">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a4f242692abecbf361c09117c14c73fe4">sort</a>(Compare compare, Sort algo=Sort{}, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a3be8735e76b3d7389c783a60ad80d624">sort</a>(Compare compare, Sort algo=Sort{}, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a044bf4aef3d8b417e50e128dce5f78f2">sort_as</a>(It first, It last) const</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a18edc7d92e7c5a336405c686fd102d9b">storage</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html#a18edc7d92e7c5a336405c686fd102d9b">storage</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__group_3_01owned__t_3_4_00_01get__t_3_01Get_8_8_8_01_4_00_01exclude__t_3_01Exclude_8_8_8_01_4_01_4.html">entt::basic_group&lt; owned_t&lt;&gt;, get_t&lt; Get... &gt;, exclude_t&lt; Exclude... &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+132
View File
@@ -0,0 +1,132 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__handle.html">basic_handle</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_handle&lt; Registry, Scope &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a2e65e9950e934dcf08b8562620b2afd6">all_of</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a1eab45b657f193edcef7cbc7951e8251">any_of</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a626e946763abe4c6471f8a367e6be42e">basic_handle</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a76c7232a30b5cee98b05409c8ef10727">basic_handle</a>(registry_type &amp;ref, entity_type value) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a010d60402134ca3ecc2b1665b338c99b">destroy</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a776a7e37785c0cf6e30885e3153375ba">destroy</a>(const version_type version)</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a5850a2de85b4977302811d60d4365b03">emplace</a>(Args &amp;&amp;...args) const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a798fb3d599ec98c2667c004ae4dbdb04">emplace_or_replace</a>(Args &amp;&amp;...args) const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#adfe5f3adcfed0c66e72919b6ba1c98a7">entity</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#ae3da8f3f4ea998e26fce6a7d9497486d">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a0759182fbb0890e816fb0504ca99e9a0">erase</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a1991e05e46cc0426d2556c3c3dab4b0f">get</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#aa6226287fd3b506b4a095cc38ceb7792">get_or_emplace</a>(Args &amp;&amp;...args) const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a5ba0413c2b98df4629eace236ef6f765">iterable</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#ac1c8add27af60e420f5f0d1d2fd078db">operator basic_handle&lt; Other, Args... &gt;</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a9d6c1f30cb7e6eed039de66b6ed05163">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a309c43b46efbd454f2c2c22b0a23b71f">operator entity_type</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a7ed6c2bcefa06c826c90013abf9c15f2">orphan</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a464d4084991529843c7c5a88d56e12cd">patch</a>(Func &amp;&amp;...func) const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#ae22e78cbaa51a4eb7070761ad4af4830">registry</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#ae0a96c4e65b652ef8e6c0764a31d7707">registry_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a927411244a87196f3db80d7514217011">remove</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a16534840f1d298cbd6eef5fa813173a3">replace</a>(Args &amp;&amp;...args) const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a67737d2e73b110e61cf881671fc6aca5">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a3b0be24c0073eeb03362ea094b7420eb">storage</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a8c9b0405cd213ff5ca7b935a6a55e636">try_get</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#ad95bbdd34812aef5f4d492d40c1b7815">valid</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__handle.html#a968c2d7f87b40d6fa6ae700be481f20c">version_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__handle.html">entt::basic_handle&lt; Registry, Scope &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,119 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__hashed__string.html">basic_hashed_string</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_hashed_string&lt; Char &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#ad293de7f68f028a3e5bd8c5928cd2595">basic_hashed_string</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#aa4eb4386f94b4669624f7b404a6beb9e">basic_hashed_string</a>(const value_type *str, const size_type len) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#aac71a88aea432d1928a57daa248b17bd">basic_hashed_string</a>(const value_type(&amp;str)[N]) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#af73ccc8ea097392a5ca14d1d8dfc13f0">basic_hashed_string</a>(const_wrapper wrapper) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a212de28c36ed21bd3a2747ed0a62b4cc">data</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#aea866875a9b05e5c01c9642766a5857f">operator const value_type *</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#af0018b378b254991675acc20ba2c600d">operator hash_type</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#ab91d2397b34deea041dd8bff77bc8824">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#aee4121972ffa798e2cb755ae278c3d4e">value</a>(const value_type *str, const size_type len) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a4e3866531b504f05e804273188f1c0c0">value</a>(const value_type(&amp;str)[N]) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a6309ed49417ab2c62b3190e5917f7fbb">value</a>(const_wrapper wrapper) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a3dfc8c9301c62d82add17de1cb4ffc7c">value</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string&lt; Char &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+712
View File
@@ -0,0 +1,712 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_hashed_string&lt; Char &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__hashed__string.html">basic_hashed_string</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classentt_1_1basic__hashed__string-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_hashed_string&lt; Char &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Zero overhead unique identifier.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for entt::basic_hashed_string&lt; Char &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__hashed__string__inherit__graph.png" border="0" usemap="#aentt_1_1basic__hashed__string_3_01Char_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="aentt_1_1basic__hashed__string_3_01Char_01_4_inherit__map" id="aentt_1_1basic__hashed__string_3_01Char_01_4_inherit__map">
<area shape="rect" title="Zero overhead unique identifier." alt="" coords="15,93,147,133"/>
<area shape="rect" title=" " alt="" coords="5,5,157,45"/>
<area shape="poly" title=" " alt="" coords="84,59,84,93,79,93,79,59"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for entt::basic_hashed_string&lt; Char &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__hashed__string__coll__graph.png" border="0" usemap="#aentt_1_1basic__hashed__string_3_01Char_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="aentt_1_1basic__hashed__string_3_01Char_01_4_coll__map" id="aentt_1_1basic__hashed__string_3_01Char_01_4_coll__map">
<area shape="rect" title="Zero overhead unique identifier." alt="" coords="15,93,147,133"/>
<area shape="rect" title=" " alt="" coords="5,5,157,45"/>
<area shape="poly" title=" " alt="" coords="84,59,84,93,79,93,79,59"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a0fa6c444b2d97cc14506cc509daef9b0" id="r_a0fa6c444b2d97cc14506cc509daef9b0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> = typename base_type::value_type</td></tr>
<tr class="memdesc:a0fa6c444b2d97cc14506cc509daef9b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Character type. <br /></td></tr>
<tr class="separator:a0fa6c444b2d97cc14506cc509daef9b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4550e2c6eb3ec63c72d6d831182bd015" id="r_a4550e2c6eb3ec63c72d6d831182bd015"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a> = typename base_type::size_type</td></tr>
<tr class="memdesc:a4550e2c6eb3ec63c72d6d831182bd015"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:a4550e2c6eb3ec63c72d6d831182bd015"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b625799426407d8083f7d418e2c6a9e" id="r_a7b625799426407d8083f7d418e2c6a9e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> = typename base_type::hash_type</td></tr>
<tr class="memdesc:a7b625799426407d8083f7d418e2c6a9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:a7b625799426407d8083f7d418e2c6a9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad293de7f68f028a3e5bd8c5928cd2595" id="r_ad293de7f68f028a3e5bd8c5928cd2595"><td class="memItemLeft" align="right" valign="top">constexpr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad293de7f68f028a3e5bd8c5928cd2595">basic_hashed_string</a> () noexcept</td></tr>
<tr class="memdesc:ad293de7f68f028a3e5bd8c5928cd2595"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty hashed string. <br /></td></tr>
<tr class="separator:ad293de7f68f028a3e5bd8c5928cd2595"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4eb4386f94b4669624f7b404a6beb9e" id="r_aa4eb4386f94b4669624f7b404a6beb9e"><td class="memItemLeft" align="right" valign="top">constexpr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa4eb4386f94b4669624f7b404a6beb9e">basic_hashed_string</a> (const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> *str, const <a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a> len) noexcept</td></tr>
<tr class="memdesc:aa4eb4386f94b4669624f7b404a6beb9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a hashed string from a string view. <br /></td></tr>
<tr class="separator:aa4eb4386f94b4669624f7b404a6beb9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac71a88aea432d1928a57daa248b17bd" id="r_aac71a88aea432d1928a57daa248b17bd"><td class="memTemplParams" colspan="2">template&lt;std::size_t N&gt; </td></tr>
<tr class="memitem:aac71a88aea432d1928a57daa248b17bd"><td class="memTemplItemLeft" align="right" valign="top">constexpr&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aac71a88aea432d1928a57daa248b17bd">basic_hashed_string</a> (const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a>(&amp;str)[N]) noexcept</td></tr>
<tr class="memdesc:aac71a88aea432d1928a57daa248b17bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a hashed string from an array of const characters. <br /></td></tr>
<tr class="separator:aac71a88aea432d1928a57daa248b17bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af73ccc8ea097392a5ca14d1d8dfc13f0" id="r_af73ccc8ea097392a5ca14d1d8dfc13f0"><td class="memItemLeft" align="right" valign="top">constexpr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af73ccc8ea097392a5ca14d1d8dfc13f0">basic_hashed_string</a> (const_wrapper wrapper) noexcept</td></tr>
<tr class="memdesc:af73ccc8ea097392a5ca14d1d8dfc13f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Explicit constructor on purpose to avoid constructing a hashed string directly from a <code>const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0" title="Character type.">value_type</a> *</code>. <br /></td></tr>
<tr class="separator:af73ccc8ea097392a5ca14d1d8dfc13f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab91d2397b34deea041dd8bff77bc8824" id="r_ab91d2397b34deea041dd8bff77bc8824"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab91d2397b34deea041dd8bff77bc8824">size</a> () const noexcept</td></tr>
<tr class="memdesc:ab91d2397b34deea041dd8bff77bc8824"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size a hashed string. <br /></td></tr>
<tr class="separator:ab91d2397b34deea041dd8bff77bc8824"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a212de28c36ed21bd3a2747ed0a62b4cc" id="r_a212de28c36ed21bd3a2747ed0a62b4cc"><td class="memItemLeft" align="right" valign="top">constexpr const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a212de28c36ed21bd3a2747ed0a62b4cc">data</a> () const noexcept</td></tr>
<tr class="memdesc:a212de28c36ed21bd3a2747ed0a62b4cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the human-readable representation of a hashed string. <br /></td></tr>
<tr class="separator:a212de28c36ed21bd3a2747ed0a62b4cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dfc8c9301c62d82add17de1cb4ffc7c" id="r_a3dfc8c9301c62d82add17de1cb4ffc7c"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3dfc8c9301c62d82add17de1cb4ffc7c">value</a> () const noexcept</td></tr>
<tr class="memdesc:a3dfc8c9301c62d82add17de1cb4ffc7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the numeric representation of a hashed string. <br /></td></tr>
<tr class="separator:a3dfc8c9301c62d82add17de1cb4ffc7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea866875a9b05e5c01c9642766a5857f" id="r_aea866875a9b05e5c01c9642766a5857f"><td class="memItemLeft" align="right" valign="top">constexpr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aea866875a9b05e5c01c9642766a5857f">operator const value_type *</a> () const noexcept</td></tr>
<tr class="memdesc:aea866875a9b05e5c01c9642766a5857f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the human-readable representation of a hashed string. <br /></td></tr>
<tr class="separator:aea866875a9b05e5c01c9642766a5857f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0018b378b254991675acc20ba2c600d" id="r_af0018b378b254991675acc20ba2c600d"><td class="memItemLeft" align="right" valign="top">constexpr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af0018b378b254991675acc20ba2c600d">operator hash_type</a> () const noexcept</td></tr>
<tr class="memdesc:af0018b378b254991675acc20ba2c600d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the numeric representation of a hashed string. <br /></td></tr>
<tr class="separator:af0018b378b254991675acc20ba2c600d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:aee4121972ffa798e2cb755ae278c3d4e" id="r_aee4121972ffa798e2cb755ae278c3d4e"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aee4121972ffa798e2cb755ae278c3d4e">value</a> (const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> *str, const <a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a> len) noexcept</td></tr>
<tr class="memdesc:aee4121972ffa798e2cb755ae278c3d4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns directly the numeric representation of a string view. <br /></td></tr>
<tr class="separator:aee4121972ffa798e2cb755ae278c3d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e3866531b504f05e804273188f1c0c0" id="r_a4e3866531b504f05e804273188f1c0c0"><td class="memTemplParams" colspan="2">template&lt;std::size_t N&gt; </td></tr>
<tr class="memitem:a4e3866531b504f05e804273188f1c0c0"><td class="memTemplItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a4e3866531b504f05e804273188f1c0c0">value</a> (const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a>(&amp;str)[N]) noexcept</td></tr>
<tr class="memdesc:a4e3866531b504f05e804273188f1c0c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns directly the numeric representation of a string. <br /></td></tr>
<tr class="separator:a4e3866531b504f05e804273188f1c0c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6309ed49417ab2c62b3190e5917f7fbb" id="r_a6309ed49417ab2c62b3190e5917f7fbb"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6309ed49417ab2c62b3190e5917f7fbb">value</a> (const_wrapper wrapper) noexcept</td></tr>
<tr class="memdesc:a6309ed49417ab2c62b3190e5917f7fbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns directly the numeric representation of a string. <br /></td></tr>
<tr class="separator:a6309ed49417ab2c62b3190e5917f7fbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Char&gt;<br />
class entt::basic_hashed_string&lt; Char &gt;</div><p>Zero overhead unique identifier. </p>
<p>A hashed string is a compile-time tool that allows users to use human-readable identifiers in the codebase while using their numeric counterparts at runtime.<br />
Because of that, a hashed string can also be used in constant expressions if required.</p>
<dl class="section warning"><dt>Warning</dt><dd>This class doesn't take ownership of user-supplied strings nor does it make a copy of them.</dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Char</td><td>Character type. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00059">59</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a7b625799426407d8083f7d418e2c6a9e" name="a7b625799426407d8083f7d418e2c6a9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b625799426407d8083f7d418e2c6a9e">&#9670;&#160;</a></span>hash_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::hash_type = typename base_type::hash_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00088">88</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="a4550e2c6eb3ec63c72d6d831182bd015" name="a4550e2c6eb3ec63c72d6d831182bd015"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4550e2c6eb3ec63c72d6d831182bd015">&#9670;&#160;</a></span>size_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::size_type = typename base_type::size_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00086">86</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="a0fa6c444b2d97cc14506cc509daef9b0" name="a0fa6c444b2d97cc14506cc509daef9b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fa6c444b2d97cc14506cc509daef9b0">&#9670;&#160;</a></span>value_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::value_type = typename base_type::value_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Character type. </p>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00084">84</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ad293de7f68f028a3e5bd8c5928cd2595" name="ad293de7f68f028a3e5bd8c5928cd2595"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad293de7f68f028a3e5bd8c5928cd2595">&#9670;&#160;</a></span>basic_hashed_string() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::basic_hashed_string </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an empty hashed string. </p>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00122">122</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="aa4eb4386f94b4669624f7b404a6beb9e" name="aa4eb4386f94b4669624f7b404a6beb9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4eb4386f94b4669624f7b404a6beb9e">&#9670;&#160;</a></span>basic_hashed_string() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::basic_hashed_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> *</td> <td class="paramname"><span class="paramname"><em>str</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a></td> <td class="paramname"><span class="paramname"><em>len</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a hashed string from a string view. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Human-readable identifier. </td></tr>
<tr><td class="paramname">len</td><td>Length of the string to hash. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00130">130</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="aac71a88aea432d1928a57daa248b17bd" name="aac71a88aea432d1928a57daa248b17bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac71a88aea432d1928a57daa248b17bd">&#9670;&#160;</a></span>basic_hashed_string() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<div class="memtemplate">
template&lt;std::size_t N&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::basic_hashed_string </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a>(&amp;)</td> <td class="paramname"><span class="paramname"><em>str</em></span>[N]</td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a hashed string from an array of const characters. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">N</td><td>Number of characters of the identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Human-readable identifier. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00140">140</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="af73ccc8ea097392a5ca14d1d8dfc13f0" name="af73ccc8ea097392a5ca14d1d8dfc13f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af73ccc8ea097392a5ca14d1d8dfc13f0">&#9670;&#160;</a></span>basic_hashed_string() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::basic_hashed_string </td>
<td>(</td>
<td class="paramtype">const_wrapper</td> <td class="paramname"><span class="paramname"><em>wrapper</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Explicit constructor on purpose to avoid constructing a hashed string directly from a <code>const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0" title="Character type.">value_type</a> *</code>. </p>
<dl class="section warning"><dt>Warning</dt><dd>The lifetime of the string is not extended nor is it copied.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">wrapper</td><td>Helps achieving the purpose by relying on overloading. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00152">152</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a212de28c36ed21bd3a2747ed0a62b4cc" name="a212de28c36ed21bd3a2747ed0a62b4cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a212de28c36ed21bd3a2747ed0a62b4cc">&#9670;&#160;</a></span>data()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> * <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::data </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the human-readable representation of a hashed string. </p>
<dl class="section return"><dt>Returns</dt><dd>The string used to initialize the hashed string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00167">167</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="aea866875a9b05e5c01c9642766a5857f" name="aea866875a9b05e5c01c9642766a5857f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea866875a9b05e5c01c9642766a5857f">&#9670;&#160;</a></span>operator const value_type *()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::operator const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> * </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the human-readable representation of a hashed string. </p>
<dl class="section return"><dt>Returns</dt><dd>The string used to initialize the hashed string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00180">180</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="af0018b378b254991675acc20ba2c600d" name="af0018b378b254991675acc20ba2c600d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0018b378b254991675acc20ba2c600d">&#9670;&#160;</a></span>operator hash_type()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::operator <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the numeric representation of a hashed string. </p>
<dl class="section return"><dt>Returns</dt><dd>The numeric representation of the hashed string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00188">188</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="ab91d2397b34deea041dd8bff77bc8824" name="ab91d2397b34deea041dd8bff77bc8824"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab91d2397b34deea041dd8bff77bc8824">&#9670;&#160;</a></span>size()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a> <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::size </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the size a hashed string. </p>
<dl class="section return"><dt>Returns</dt><dd>The size of the hashed string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00159">159</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="a3dfc8c9301c62d82add17de1cb4ffc7c" name="a3dfc8c9301c62d82add17de1cb4ffc7c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3dfc8c9301c62d82add17de1cb4ffc7c">&#9670;&#160;</a></span>value() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::value </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the numeric representation of a hashed string. </p>
<dl class="section return"><dt>Returns</dt><dd>The numeric representation of the hashed string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00175">175</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="aee4121972ffa798e2cb755ae278c3d4e" name="aee4121972ffa798e2cb755ae278c3d4e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee4121972ffa798e2cb755ae278c3d4e">&#9670;&#160;</a></span>value() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::value </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a> *</td> <td class="paramname"><span class="paramname"><em>str</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#a4550e2c6eb3ec63c72d6d831182bd015">size_type</a></td> <td class="paramname"><span class="paramname"><em>len</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns directly the numeric representation of a string view. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Human-readable identifier. </td></tr>
<tr><td class="paramname">len</td><td>Length of the string to hash. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The numeric representation of the string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00096">96</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="a4e3866531b504f05e804273188f1c0c0" name="a4e3866531b504f05e804273188f1c0c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e3866531b504f05e804273188f1c0c0">&#9670;&#160;</a></span>value() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<div class="memtemplate">
template&lt;std::size_t N&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::value </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a0fa6c444b2d97cc14506cc509daef9b0">value_type</a>(&amp;)</td> <td class="paramname"><span class="paramname"><em>str</em></span>[N]</td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns directly the numeric representation of a string. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">N</td><td>Number of characters of the identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Human-readable identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The numeric representation of the string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00108">108</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<a id="a6309ed49417ab2c62b3190e5917f7fbb" name="a6309ed49417ab2c62b3190e5917f7fbb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6309ed49417ab2c62b3190e5917f7fbb">&#9670;&#160;</a></span>value() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Char&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static constexpr <a class="el" href="#a7b625799426407d8083f7d418e2c6a9e">hash_type</a> <a class="el" href="classentt_1_1basic__hashed__string.html">entt::basic_hashed_string</a>&lt; Char &gt;::value </td>
<td>(</td>
<td class="paramtype">const_wrapper</td> <td class="paramname"><span class="paramname"><em>wrapper</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns directly the numeric representation of a string. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">wrapper</td><td>Helps achieving the purpose by relying on overloading. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The numeric representation of the string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="hashed__string_8hpp_source.html#l00117">117</a> of file <a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/core/<a class="el" href="core_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/core/<a class="el" href="hashed__string_8hpp_source.html">hashed_string.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,5 @@
<map id="entt::basic_hashed_string&lt; Char &gt;" name="entt::basic_hashed_string&lt; Char &gt;">
<area shape="rect" id="Node000001" title="Zero overhead unique identifier." alt="" coords="15,93,147,133"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,157,45"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="84,59,84,93,79,93,79,59"/>
</map>
@@ -0,0 +1 @@
ad3f445ae4c698ccb4c7b77e58f8fb8c
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

@@ -0,0 +1,5 @@
<map id="entt::basic_hashed_string&lt; Char &gt;" name="entt::basic_hashed_string&lt; Char &gt;">
<area shape="rect" id="Node000001" title="Zero overhead unique identifier." alt="" coords="15,93,147,133"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,157,45"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="84,59,84,93,79,93,79,59"/>
</map>
@@ -0,0 +1 @@
ad3f445ae4c698ccb4c7b77e58f8fb8c
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

+113
View File
@@ -0,0 +1,113 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__organizer.html">basic_organizer</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_organizer&lt; Registry &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#a755aaa8b355f58aff645bd54d5674317">clear</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#a813786d2c24e14f9f14d4a9c8799d868">emplace</a>(const char *name=nullptr)</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#ac40558158f729efc26c7787cdc451e11">emplace</a>(Type &amp;value_or_instance, const char *name=nullptr)</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#ab902bd0bc4dd15f0ac1e02ac5517a8e8">emplace</a>(function_type *func, const void *payload=nullptr, const char *name=nullptr)</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#adca9a9f4e7676507c10ecd0c46fb7757">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#ab4111ab706d0160d4bbf3a9223583d94">function_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#a540973737740605acac4c35d1176abde">graph</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#a204c62d3d8111ed5e0d2c34fa816235c">registry_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html#af6daba0d6d0fd3e253ae6969a07a1e48">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer&lt; Registry &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+468
View File
@@ -0,0 +1,468 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_organizer&lt; Registry &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__organizer.html">basic_organizer</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1basic__organizer-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_organizer&lt; Registry &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Utility class for creating a static task graph.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structentt_1_1basic__organizer_1_1vertex.html">vertex</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vertex type of a task graph defined as an adjacency list. <a href="structentt_1_1basic__organizer_1_1vertex.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a204c62d3d8111ed5e0d2c34fa816235c" id="r_a204c62d3d8111ed5e0d2c34fa816235c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a204c62d3d8111ed5e0d2c34fa816235c">registry_type</a> = Registry</td></tr>
<tr class="separator:a204c62d3d8111ed5e0d2c34fa816235c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adca9a9f4e7676507c10ecd0c46fb7757" id="r_adca9a9f4e7676507c10ecd0c46fb7757"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adca9a9f4e7676507c10ecd0c46fb7757">entity_type</a> = typename registry_type::entity_type</td></tr>
<tr class="memdesc:adca9a9f4e7676507c10ecd0c46fb7757"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:adca9a9f4e7676507c10ecd0c46fb7757"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6daba0d6d0fd3e253ae6969a07a1e48" id="r_af6daba0d6d0fd3e253ae6969a07a1e48"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af6daba0d6d0fd3e253ae6969a07a1e48">size_type</a> = std::size_t</td></tr>
<tr class="memdesc:af6daba0d6d0fd3e253ae6969a07a1e48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:af6daba0d6d0fd3e253ae6969a07a1e48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4111ab706d0160d4bbf3a9223583d94" id="r_ab4111ab706d0160d4bbf3a9223583d94"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab4111ab706d0160d4bbf3a9223583d94">function_type</a> = callback_type</td></tr>
<tr class="memdesc:ab4111ab706d0160d4bbf3a9223583d94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Raw task function type. <br /></td></tr>
<tr class="separator:ab4111ab706d0160d4bbf3a9223583d94"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a813786d2c24e14f9f14d4a9c8799d868" id="r_a813786d2c24e14f9f14d4a9c8799d868"><td class="memTemplParams" colspan="2">template&lt;auto Candidate, typename... Req&gt; </td></tr>
<tr class="memitem:a813786d2c24e14f9f14d4a9c8799d868"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a813786d2c24e14f9f14d4a9c8799d868">emplace</a> (const char *name=nullptr)</td></tr>
<tr class="memdesc:a813786d2c24e14f9f14d4a9c8799d868"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a free function to the task list. <br /></td></tr>
<tr class="separator:a813786d2c24e14f9f14d4a9c8799d868"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac40558158f729efc26c7787cdc451e11" id="r_ac40558158f729efc26c7787cdc451e11"><td class="memTemplParams" colspan="2">template&lt;auto Candidate, typename... Req, typename Type&gt; </td></tr>
<tr class="memitem:ac40558158f729efc26c7787cdc451e11"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ac40558158f729efc26c7787cdc451e11">emplace</a> (Type &amp;value_or_instance, const char *name=nullptr)</td></tr>
<tr class="memdesc:ac40558158f729efc26c7787cdc451e11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a free function with payload or a member function with an instance to the task list. <br /></td></tr>
<tr class="separator:ac40558158f729efc26c7787cdc451e11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab902bd0bc4dd15f0ac1e02ac5517a8e8" id="r_ab902bd0bc4dd15f0ac1e02ac5517a8e8"><td class="memTemplParams" colspan="2">template&lt;typename... Req&gt; </td></tr>
<tr class="memitem:ab902bd0bc4dd15f0ac1e02ac5517a8e8"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ab902bd0bc4dd15f0ac1e02ac5517a8e8">emplace</a> (<a class="el" href="#ab4111ab706d0160d4bbf3a9223583d94">function_type</a> *func, const void *payload=nullptr, const char *name=nullptr)</td></tr>
<tr class="memdesc:ab902bd0bc4dd15f0ac1e02ac5517a8e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an user defined function with optional payload to the task list. <br /></td></tr>
<tr class="separator:ab902bd0bc4dd15f0ac1e02ac5517a8e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a540973737740605acac4c35d1176abde" id="r_a540973737740605acac4c35d1176abde"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="structentt_1_1basic__organizer_1_1vertex.html">vertex</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a540973737740605acac4c35d1176abde">graph</a> ()</td></tr>
<tr class="memdesc:a540973737740605acac4c35d1176abde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates a task graph for the current content. <br /></td></tr>
<tr class="separator:a540973737740605acac4c35d1176abde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a755aaa8b355f58aff645bd54d5674317" id="r_a755aaa8b355f58aff645bd54d5674317"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a755aaa8b355f58aff645bd54d5674317">clear</a> ()</td></tr>
<tr class="memdesc:a755aaa8b355f58aff645bd54d5674317"><td class="mdescLeft">&#160;</td><td class="mdescRight">Erases all elements from a container. <br /></td></tr>
<tr class="separator:a755aaa8b355f58aff645bd54d5674317"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Registry&gt;<br />
class entt::basic_organizer&lt; Registry &gt;</div><p>Utility class for creating a static task graph. </p>
<p>This class offers minimal support (but sufficient in many cases) for creating an execution graph from functions and their requirements on resources.<br />
Note that the resulting tasks aren't executed in any case. This isn't the goal of the tool. Instead, they are returned to the user in the form of a graph that allows for safe execution.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Registry</td><td>Basic registry type. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00119">119</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="adca9a9f4e7676507c10ecd0c46fb7757" name="adca9a9f4e7676507c10ecd0c46fb7757"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adca9a9f4e7676507c10ecd0c46fb7757">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::entity_type = typename registry_type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00183">183</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="ab4111ab706d0160d4bbf3a9223583d94" name="ab4111ab706d0160d4bbf3a9223583d94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4111ab706d0160d4bbf3a9223583d94">&#9670;&#160;</a></span>function_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::function_type = callback_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Raw task function type. </p>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00187">187</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="a204c62d3d8111ed5e0d2c34fa816235c" name="a204c62d3d8111ed5e0d2c34fa816235c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a204c62d3d8111ed5e0d2c34fa816235c">&#9670;&#160;</a></span>registry_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::registry_type = Registry</td>
</tr>
</table>
</div><div class="memdoc">
<p>Basic registry type. </p>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00181">181</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="af6daba0d6d0fd3e253ae6969a07a1e48" name="af6daba0d6d0fd3e253ae6969a07a1e48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6daba0d6d0fd3e253ae6969a07a1e48">&#9670;&#160;</a></span>size_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::size_type = std::size_t</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00185">185</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a755aaa8b355f58aff645bd54d5674317" name="a755aaa8b355f58aff645bd54d5674317"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a755aaa8b355f58aff645bd54d5674317">&#9670;&#160;</a></span>clear()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::clear </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Erases all elements from a container. </p>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00427">427</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="a813786d2c24e14f9f14d4a9c8799d868" name="a813786d2c24e14f9f14d4a9c8799d868"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a813786d2c24e14f9f14d4a9c8799d868">&#9670;&#160;</a></span>emplace() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<div class="memtemplate">
template&lt;auto Candidate, typename... Req&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::emplace </td>
<td>(</td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a free function to the task list. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Candidate</td><td>Function to add to the task list. </td></tr>
<tr><td class="paramname">Req</td><td>Additional requirements and/or override resource access mode. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>Optional name to associate with the task. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00318">318</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="ab902bd0bc4dd15f0ac1e02ac5517a8e8" name="ab902bd0bc4dd15f0ac1e02ac5517a8e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab902bd0bc4dd15f0ac1e02ac5517a8e8">&#9670;&#160;</a></span>emplace() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename... Req&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::emplace </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#ab4111ab706d0160d4bbf3a9223583d94">function_type</a> *</td> <td class="paramname"><span class="paramname"><em>func</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *</td> <td class="paramname"><span class="paramname"><em>payload</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an user defined function with optional payload to the task list. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Req</td><td>Additional requirements and/or override resource access mode. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">func</td><td>Function to add to the task list. </td></tr>
<tr><td class="paramname">payload</td><td>User defined arbitrary data. </td></tr>
<tr><td class="paramname">name</td><td>Optional name to associate with the task. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00382">382</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="ac40558158f729efc26c7787cdc451e11" name="ac40558158f729efc26c7787cdc451e11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac40558158f729efc26c7787cdc451e11">&#9670;&#160;</a></span>emplace() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<div class="memtemplate">
template&lt;auto Candidate, typename... Req, typename Type&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::emplace </td>
<td>(</td>
<td class="paramtype">Type &amp;</td> <td class="paramname"><span class="paramname"><em>value_or_instance</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>name</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds a free function with payload or a member function with an instance to the task list. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Candidate</td><td>Function or member to add to the task list. </td></tr>
<tr><td class="paramname">Req</td><td>Additional requirements and/or override resource access mode. </td></tr>
<tr><td class="paramname">Type</td><td>Type of class or type of payload. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value_or_instance</td><td>A valid object that fits the purpose. </td></tr>
<tr><td class="paramname">name</td><td>Optional name to associate with the task. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00350">350</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<a id="a540973737740605acac4c35d1176abde" name="a540973737740605acac4c35d1176abde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a540973737740605acac4c35d1176abde">&#9670;&#160;</a></span>graph()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; <a class="el" href="structentt_1_1basic__organizer_1_1vertex.html">vertex</a> &gt; <a class="el" href="classentt_1_1basic__organizer.html">entt::basic_organizer</a>&lt; Registry &gt;::graph </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Generates a task graph for the current content. </p>
<dl class="section return"><dt>Returns</dt><dd>The adjacency list of the task graph. </dd></dl>
<p class="definition">Definition at line <a class="el" href="organizer_8hpp_source.html#l00403">403</a> of file <a class="el" href="organizer_8hpp_source.html">organizer.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/entity/<a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/entity/<a class="el" href="organizer_8hpp_source.html">organizer.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+120
View File
@@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__poly.html">basic_poly</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_poly&lt; Concept, Len, Align &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a327c0a52b8eff8be5746bd0215d6a6d0">as_ref</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a8293af6e4643b9917aee7962016f5470">as_ref</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#af1ee3622b7b01d9934dd903f54846e44">basic_poly</a>() noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#aed074839fc14e757f761d89606895062">basic_poly</a>(std::in_place_type_t&lt; Type &gt;, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#aa587d96479005de4cd19047a7c76cf94">basic_poly</a>(Type &amp;&amp;value) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a71786016b64718d72167ff763f4793cf">concept_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#aee4305d651f7b2f5248eba2cbfea4f17">data</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a37aafd6c5ebf21b0eb66c3934abcbc06">data</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a6aaa4ef03f6f2a599abcf633412d6a8d">emplace</a>(Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a9bd854e20fcb28a1c8bd9e616cce21a7">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a490333415cfcb0c59b12a11f8ccd36c7">operator-&gt;</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#aa4453091b5b53c536ae2f6a1b1fce189">operator-&gt;</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>poly_base&lt; basic_poly &gt;</b> (defined in <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a>)</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a43ab35169a0fdb31f7f5db5e5ad0e17d">reset</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#a0341f0451d35dbe7a70634e4cf5037db">type</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__poly.html#abf0092d4a0a8976a742ff76a68851054">vtable_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly&lt; Concept, Len, Align &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+711
View File
@@ -0,0 +1,711 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_poly&lt; Concept, Len, Align &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__poly.html">basic_poly</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classentt_1_1basic__poly-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_poly&lt; Concept, Len, Align &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Static polymorphism made simple and within everyone's reach.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="poly_8hpp_source.html">poly.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for entt::basic_poly&lt; Concept, Len, Align &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__poly__inherit__graph.png" border="0" usemap="#aentt_1_1basic__poly_3_01Concept_00_01Len_00_01Align_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="aentt_1_1basic__poly_3_01Concept_00_01Len_00_01Align_01_4_inherit__map" id="aentt_1_1basic__poly_3_01Concept_00_01Len_00_01Align_01_4_inherit__map">
<area shape="rect" title="Static polymorphism made simple and within everyone&#39;s reach." alt="" coords="8,108,187,148"/>
<area shape="rect" title=" " alt="" coords="5,5,189,60"/>
<area shape="poly" title=" " alt="" coords="100,74,100,108,95,108,95,74"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for entt::basic_poly&lt; Concept, Len, Align &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__poly__coll__graph.png" border="0" usemap="#aentt_1_1basic__poly_3_01Concept_00_01Len_00_01Align_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="aentt_1_1basic__poly_3_01Concept_00_01Len_00_01Align_01_4_coll__map" id="aentt_1_1basic__poly_3_01Concept_00_01Len_00_01Align_01_4_coll__map">
<area shape="rect" title="Static polymorphism made simple and within everyone&#39;s reach." alt="" coords="8,108,187,148"/>
<area shape="rect" title=" " alt="" coords="5,5,189,60"/>
<area shape="poly" title=" " alt="" coords="100,74,100,108,95,108,95,74"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a71786016b64718d72167ff763f4793cf" id="r_a71786016b64718d72167ff763f4793cf"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a71786016b64718d72167ff763f4793cf">concept_type</a> = typename Concept::template <a class="el" href="#a0341f0451d35dbe7a70634e4cf5037db">type</a>&lt;<a class="el" href="structentt_1_1poly__base.html">poly_base</a>&lt;<a class="el" href="classentt_1_1basic__poly.html">basic_poly</a>&gt;&gt;</td></tr>
<tr class="memdesc:a71786016b64718d72167ff763f4793cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Concept type. <br /></td></tr>
<tr class="separator:a71786016b64718d72167ff763f4793cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf0092d4a0a8976a742ff76a68851054" id="r_abf0092d4a0a8976a742ff76a68851054"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abf0092d4a0a8976a742ff76a68851054">vtable_type</a> = typename <a class="el" href="classentt_1_1poly__vtable.html">poly_vtable</a>&lt;Concept, Len, Align&gt;<a class="el" href="#a0341f0451d35dbe7a70634e4cf5037db">::type</a></td></tr>
<tr class="memdesc:abf0092d4a0a8976a742ff76a68851054"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual table type. <br /></td></tr>
<tr class="separator:abf0092d4a0a8976a742ff76a68851054"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af1ee3622b7b01d9934dd903f54846e44" id="r_af1ee3622b7b01d9934dd903f54846e44"><td class="memItemLeft" align="right" valign="top"><a id="af1ee3622b7b01d9934dd903f54846e44" name="af1ee3622b7b01d9934dd903f54846e44"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_poly</b> () noexcept=default</td></tr>
<tr class="memdesc:af1ee3622b7b01d9934dd903f54846e44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:af1ee3622b7b01d9934dd903f54846e44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed074839fc14e757f761d89606895062" id="r_aed074839fc14e757f761d89606895062"><td class="memTemplParams" colspan="2">template&lt;typename Type, typename... Args&gt; </td></tr>
<tr class="memitem:aed074839fc14e757f761d89606895062"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aed074839fc14e757f761d89606895062">basic_poly</a> (std::in_place_type_t&lt; Type &gt;, Args &amp;&amp;...args)</td></tr>
<tr class="memdesc:aed074839fc14e757f761d89606895062"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a poly by directly initializing the new object. <br /></td></tr>
<tr class="separator:aed074839fc14e757f761d89606895062"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa587d96479005de4cd19047a7c76cf94" id="r_aa587d96479005de4cd19047a7c76cf94"><td class="memTemplParams" colspan="2">template&lt;typename Type, typename = std::enable_if_t&lt;!std::is_same_v&lt;std::remove_cv_t&lt;std::remove_reference_t&lt;Type&gt;&gt;, basic_poly&gt;&gt;&gt; </td></tr>
<tr class="memitem:aa587d96479005de4cd19047a7c76cf94"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aa587d96479005de4cd19047a7c76cf94">basic_poly</a> (Type &amp;&amp;value) noexcept</td></tr>
<tr class="memdesc:aa587d96479005de4cd19047a7c76cf94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a poly from a given value. <br /></td></tr>
<tr class="separator:aa587d96479005de4cd19047a7c76cf94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0341f0451d35dbe7a70634e4cf5037db" id="r_a0341f0451d35dbe7a70634e4cf5037db"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structentt_1_1type__info.html">type_info</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0341f0451d35dbe7a70634e4cf5037db">type</a> () const noexcept</td></tr>
<tr class="memdesc:a0341f0451d35dbe7a70634e4cf5037db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object type if any, <code>type_id&lt;void&gt;()</code> otherwise. <br /></td></tr>
<tr class="separator:a0341f0451d35dbe7a70634e4cf5037db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee4305d651f7b2f5248eba2cbfea4f17" id="r_aee4305d651f7b2f5248eba2cbfea4f17"><td class="memItemLeft" align="right" valign="top">const void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aee4305d651f7b2f5248eba2cbfea4f17">data</a> () const noexcept</td></tr>
<tr class="memdesc:aee4305d651f7b2f5248eba2cbfea4f17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an opaque pointer to the contained instance. <br /></td></tr>
<tr class="separator:aee4305d651f7b2f5248eba2cbfea4f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37aafd6c5ebf21b0eb66c3934abcbc06" id="r_a37aafd6c5ebf21b0eb66c3934abcbc06"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a37aafd6c5ebf21b0eb66c3934abcbc06">data</a> () noexcept</td></tr>
<tr class="memdesc:a37aafd6c5ebf21b0eb66c3934abcbc06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an opaque pointer to the contained instance. <br /></td></tr>
<tr class="separator:a37aafd6c5ebf21b0eb66c3934abcbc06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6aaa4ef03f6f2a599abcf633412d6a8d" id="r_a6aaa4ef03f6f2a599abcf633412d6a8d"><td class="memTemplParams" colspan="2">template&lt;typename Type, typename... Args&gt; </td></tr>
<tr class="memitem:a6aaa4ef03f6f2a599abcf633412d6a8d"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a6aaa4ef03f6f2a599abcf633412d6a8d">emplace</a> (Args &amp;&amp;...args)</td></tr>
<tr class="memdesc:a6aaa4ef03f6f2a599abcf633412d6a8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replaces the contained object by creating a new instance directly. <br /></td></tr>
<tr class="separator:a6aaa4ef03f6f2a599abcf633412d6a8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43ab35169a0fdb31f7f5db5e5ad0e17d" id="r_a43ab35169a0fdb31f7f5db5e5ad0e17d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a43ab35169a0fdb31f7f5db5e5ad0e17d">reset</a> ()</td></tr>
<tr class="memdesc:a43ab35169a0fdb31f7f5db5e5ad0e17d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys contained object. <br /></td></tr>
<tr class="separator:a43ab35169a0fdb31f7f5db5e5ad0e17d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bd854e20fcb28a1c8bd9e616cce21a7" id="r_a9bd854e20fcb28a1c8bd9e616cce21a7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9bd854e20fcb28a1c8bd9e616cce21a7">operator bool</a> () const noexcept</td></tr>
<tr class="memdesc:a9bd854e20fcb28a1c8bd9e616cce21a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns false if a poly is empty, true otherwise. <br /></td></tr>
<tr class="separator:a9bd854e20fcb28a1c8bd9e616cce21a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a490333415cfcb0c59b12a11f8ccd36c7" id="r_a490333415cfcb0c59b12a11f8ccd36c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a71786016b64718d72167ff763f4793cf">concept_type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a490333415cfcb0c59b12a11f8ccd36c7">operator-&gt;</a> () noexcept</td></tr>
<tr class="memdesc:a490333415cfcb0c59b12a11f8ccd36c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the underlying concept. <br /></td></tr>
<tr class="separator:a490333415cfcb0c59b12a11f8ccd36c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4453091b5b53c536ae2f6a1b1fce189" id="r_aa4453091b5b53c536ae2f6a1b1fce189"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="#a71786016b64718d72167ff763f4793cf">concept_type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa4453091b5b53c536ae2f6a1b1fce189">operator-&gt;</a> () const noexcept</td></tr>
<tr class="memdesc:aa4453091b5b53c536ae2f6a1b1fce189"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the underlying concept. <br /></td></tr>
<tr class="separator:aa4453091b5b53c536ae2f6a1b1fce189"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a327c0a52b8eff8be5746bd0215d6a6d0" id="r_a327c0a52b8eff8be5746bd0215d6a6d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__poly.html">basic_poly</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a327c0a52b8eff8be5746bd0215d6a6d0">as_ref</a> () noexcept</td></tr>
<tr class="memdesc:a327c0a52b8eff8be5746bd0215d6a6d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aliasing constructor. <br /></td></tr>
<tr class="separator:a327c0a52b8eff8be5746bd0215d6a6d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8293af6e4643b9917aee7962016f5470" id="r_a8293af6e4643b9917aee7962016f5470"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__poly.html">basic_poly</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8293af6e4643b9917aee7962016f5470">as_ref</a> () const noexcept</td></tr>
<tr class="memdesc:a8293af6e4643b9917aee7962016f5470"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aliasing constructor. <br /></td></tr>
<tr class="separator:a8293af6e4643b9917aee7962016f5470"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a4f532417307014ab3c9eb0070beaf7fc" id="r_a4f532417307014ab3c9eb0070beaf7fc"><td class="memItemLeft" align="right" valign="top">struct&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4f532417307014ab3c9eb0070beaf7fc">poly_base&lt; basic_poly &gt;</a></td></tr>
<tr class="separator:a4f532417307014ab3c9eb0070beaf7fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Concept, std::size_t Len, std::size_t Align&gt;<br />
class entt::basic_poly&lt; Concept, Len, Align &gt;</div><p>Static polymorphism made simple and within everyone's reach. </p>
<p>Static polymorphism is a very powerful tool in C++, albeit sometimes cumbersome to obtain.<br />
This class aims to make it simple and easy to use.</p>
<dl class="section note"><dt>Note</dt><dd>Both deduced and defined static virtual tables are supported.<br />
Moreover, the <code>poly</code> class template also works with unmanaged objects.</dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Concept</td><td>Concept descriptor. </td></tr>
<tr><td class="paramname">Len</td><td>Size of the storage reserved for the small buffer optimization. </td></tr>
<tr><td class="paramname">Align</td><td>Optional alignment requirement. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00193">193</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a71786016b64718d72167ff763f4793cf" name="a71786016b64718d72167ff763f4793cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71786016b64718d72167ff763f4793cf">&#9670;&#160;</a></span>concept_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::concept_type = typename Concept::template <a class="el" href="#a0341f0451d35dbe7a70634e4cf5037db">type</a>&lt;<a class="el" href="structentt_1_1poly__base.html">poly_base</a>&lt;<a class="el" href="classentt_1_1basic__poly.html">basic_poly</a>&gt;&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Concept type. </p>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00198">198</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="abf0092d4a0a8976a742ff76a68851054" name="abf0092d4a0a8976a742ff76a68851054"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf0092d4a0a8976a742ff76a68851054">&#9670;&#160;</a></span>vtable_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::vtable_type = typename <a class="el" href="classentt_1_1poly__vtable.html">poly_vtable</a>&lt;Concept, Len, Align&gt;<a class="el" href="#a0341f0451d35dbe7a70634e4cf5037db">::type</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual table type. </p>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00200">200</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aed074839fc14e757f761d89606895062" name="aed074839fc14e757f761d89606895062"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed074839fc14e757f761d89606895062">&#9670;&#160;</a></span>basic_poly() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<div class="memtemplate">
template&lt;typename Type, typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::basic_poly </td>
<td>(</td>
<td class="paramtype">std::in_place_type_t&lt; Type &gt;</td> <td class="paramname"><span class="paramname"><em></em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">Args &amp;&amp;...</td> <td class="paramname"><span class="paramname"><em>args</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a poly by directly initializing the new object. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of object to use to initialize the poly. </td></tr>
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the new instance. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Parameters to use to construct the instance. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00212">212</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="aa587d96479005de4cd19047a7c76cf94" name="aa587d96479005de4cd19047a7c76cf94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa587d96479005de4cd19047a7c76cf94">&#9670;&#160;</a></span>basic_poly() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<div class="memtemplate">
template&lt;typename Type, typename = std::enable_if_t&lt;!std::is_same_v&lt;std::remove_cv_t&lt;std::remove_reference_t&lt;Type&gt;&gt;, basic_poly&gt;&gt;&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::basic_poly </td>
<td>(</td>
<td class="paramtype">Type &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a poly from a given value. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of object to use to initialize the poly. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">value</td><td>An instance of an object to use to initialize the poly. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00222">222</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a8293af6e4643b9917aee7962016f5470" name="a8293af6e4643b9917aee7962016f5470"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8293af6e4643b9917aee7962016f5470">&#9670;&#160;</a></span>as_ref() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__poly.html">basic_poly</a> <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::as_ref </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Aliasing constructor. </p>
<dl class="section return"><dt>Returns</dt><dd>A poly that shares a reference to an unmanaged object. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00297">297</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a327c0a52b8eff8be5746bd0215d6a6d0" name="a327c0a52b8eff8be5746bd0215d6a6d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a327c0a52b8eff8be5746bd0215d6a6d0">&#9670;&#160;</a></span>as_ref() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__poly.html">basic_poly</a> <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::as_ref </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Aliasing constructor. </p>
<dl class="section return"><dt>Returns</dt><dd>A poly that shares a reference to an unmanaged object. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00289">289</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="aee4305d651f7b2f5248eba2cbfea4f17" name="aee4305d651f7b2f5248eba2cbfea4f17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee4305d651f7b2f5248eba2cbfea4f17">&#9670;&#160;</a></span>data() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const void * <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::data </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an opaque pointer to the contained instance. </p>
<dl class="section return"><dt>Returns</dt><dd>An opaque pointer the contained instance, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00237">237</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a37aafd6c5ebf21b0eb66c3934abcbc06" name="a37aafd6c5ebf21b0eb66c3934abcbc06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37aafd6c5ebf21b0eb66c3934abcbc06">&#9670;&#160;</a></span>data() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void * <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::data </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an opaque pointer to the contained instance. </p>
<dl class="section return"><dt>Returns</dt><dd>An opaque pointer the contained instance, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00242">242</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a6aaa4ef03f6f2a599abcf633412d6a8d" name="a6aaa4ef03f6f2a599abcf633412d6a8d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6aaa4ef03f6f2a599abcf633412d6a8d">&#9670;&#160;</a></span>emplace()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<div class="memtemplate">
template&lt;typename Type, typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::emplace </td>
<td>(</td>
<td class="paramtype">Args &amp;&amp;...</td> <td class="paramname"><span class="paramname"><em>args</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Replaces the contained object by creating a new instance directly. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Type of object to use to initialize the poly. </td></tr>
<tr><td class="paramname">Args</td><td>Types of arguments to use to construct the new instance. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Parameters to use to construct the instance. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00253">253</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a9bd854e20fcb28a1c8bd9e616cce21a7" name="a9bd854e20fcb28a1c8bd9e616cce21a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9bd854e20fcb28a1c8bd9e616cce21a7">&#9670;&#160;</a></span>operator bool()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::operator bool </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns false if a poly is empty, true otherwise. </p>
<dl class="section return"><dt>Returns</dt><dd>False if the poly is empty, true otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00268">268</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="aa4453091b5b53c536ae2f6a1b1fce189" name="aa4453091b5b53c536ae2f6a1b1fce189"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4453091b5b53c536ae2f6a1b1fce189">&#9670;&#160;</a></span>operator-&gt;() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="#a71786016b64718d72167ff763f4793cf">concept_type</a> * <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::operator-&gt; </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a pointer to the underlying concept. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the underlying concept. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00281">281</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a490333415cfcb0c59b12a11f8ccd36c7" name="a490333415cfcb0c59b12a11f8ccd36c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a490333415cfcb0c59b12a11f8ccd36c7">&#9670;&#160;</a></span>operator-&gt;() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a71786016b64718d72167ff763f4793cf">concept_type</a> * <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::operator-&gt; </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a pointer to the underlying concept. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the underlying concept. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00276">276</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a43ab35169a0fdb31f7f5db5e5ad0e17d" name="a43ab35169a0fdb31f7f5db5e5ad0e17d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43ab35169a0fdb31f7f5db5e5ad0e17d">&#9670;&#160;</a></span>reset()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::reset </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroys contained object. </p>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00259">259</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<a id="a0341f0451d35dbe7a70634e4cf5037db" name="a0341f0451d35dbe7a70634e4cf5037db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0341f0451d35dbe7a70634e4cf5037db">&#9670;&#160;</a></span>type()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structentt_1_1type__info.html">type_info</a> &amp; <a class="el" href="classentt_1_1basic__poly.html">entt::basic_poly</a>&lt; Concept, Len, Align &gt;::type </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object type if any, <code>type_id&lt;void&gt;()</code> otherwise. </p>
<dl class="section return"><dt>Returns</dt><dd>The object type if any, <code>type_id&lt;void&gt;()</code> otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00229">229</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Friends And Related Symbol Documentation</h2>
<a id="a4f532417307014ab3c9eb0070beaf7fc" name="a4f532417307014ab3c9eb0070beaf7fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f532417307014ab3c9eb0070beaf7fc">&#9670;&#160;</a></span>poly_base&lt; basic_poly &gt;</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Concept, std::size_t Len, std::size_t Align&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend struct <a class="el" href="structentt_1_1poly__base.html">poly_base</a>&lt; <a class="el" href="classentt_1_1basic__poly.html">basic_poly</a> &gt;</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel friend">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="poly_8hpp_source.html#l00151">151</a> of file <a class="el" href="poly_8hpp_source.html">poly.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/poly/<a class="el" href="poly_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/poly/<a class="el" href="poly_8hpp_source.html">poly.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,5 @@
<map id="entt::basic_poly&lt; Concept, Len, Align &gt;" name="entt::basic_poly&lt; Concept, Len, Align &gt;">
<area shape="rect" id="Node000001" title="Static polymorphism made simple and within everyone&#39;s reach." alt="" coords="8,108,187,148"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,189,60"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="100,74,100,108,95,108,95,74"/>
</map>
@@ -0,0 +1 @@
845096e0fcc5c1105366d4c7e7f4e082
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

@@ -0,0 +1,5 @@
<map id="entt::basic_poly&lt; Concept, Len, Align &gt;" name="entt::basic_poly&lt; Concept, Len, Align &gt;">
<area shape="rect" id="Node000001" title="Static polymorphism made simple and within everyone&#39;s reach." alt="" coords="8,108,187,148"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="5,5,189,60"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="100,74,100,108,95,108,95,74"/>
</map>
@@ -0,0 +1 @@
845096e0fcc5c1105366d4c7e7f4e082
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

@@ -0,0 +1,124 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_reactive_mixin&lt; Type, Registry &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a838cdfaecf9e58c0786bea956453a05c">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a5f95e4f7cf9cfaf3a169db75dc0c147b">basic_reactive_mixin</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a24156d6ae47d5b777b6be8a9ba7aa99f">basic_reactive_mixin</a>(const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#aca2d1ec327b157a1a7f41c7935a98832">basic_reactive_mixin</a>(const basic_reactive_mixin &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a3a0067a81152d2bfbec2723e0664461a">basic_reactive_mixin</a>(basic_reactive_mixin &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a8327edcef07c577a904fee0ef5f7a64e">basic_reactive_mixin</a>(basic_reactive_mixin &amp;&amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#aa2878e10703e6ba6456c7c45f35bfa55">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#af3eb5ddbf128303f1339f3b513168c26">on_construct</a>(const id_type id=type_hash&lt; Clazz &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#ad4e2176d8715837b780eae5f29375a01">on_destroy</a>(const id_type id=type_hash&lt; Clazz &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#acbfcbbb0f1f889fba12104643a29beff">on_update</a>(const id_type id=type_hash&lt; Clazz &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a07f2a09ede7efaff93491e720d0ea081">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#ae24f79e5531d76a1518efa34aa3a6e94">operator=</a>(const basic_reactive_mixin &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a04cc8d9b1069319225e47cfd8feb8375">operator=</a>(basic_reactive_mixin &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a2dcb5310a91c138c64ef59865642f10f">registry</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#ada350d4506f51f1d7ef3e29493fcda61">registry</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#ad229496ac95debff57e7999efb49bb10">registry_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a13ecbd5a8b7b87e5bbead511c161fe66">reset</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a7902400038df582034a750f134b458f1">view</a>(exclude_t&lt; Exclude... &gt;=exclude_t{}) const</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a34198add8a7511e33e26f57fbaa3b6b5">view</a>(exclude_t&lt; Exclude... &gt;=exclude_t{})</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html#a6bafc1c76baa384839156e2d672bcc43">~basic_reactive_mixin</a>() override=default</td><td class="entry"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin&lt; Type, Registry &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+848
View File
@@ -0,0 +1,848 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_reactive_mixin&lt; Type, Registry &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1basic__reactive__mixin-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_reactive_mixin&lt; Type, Registry &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Mixin type used to add <em>reactive</em> support to storage types.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for entt::basic_reactive_mixin&lt; Type, Registry &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__reactive__mixin__inherit__graph.png" border="0" usemap="#aentt_1_1basic__reactive__mixin_3_01Type_00_01Registry_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="aentt_1_1basic__reactive__mixin_3_01Type_00_01Registry_01_4_inherit__map" id="aentt_1_1basic__reactive__mixin_3_01Type_00_01Registry_01_4_inherit__map">
<area shape="rect" title="Mixin type used to add reactive support to storage types." alt="" coords="5,79,173,119"/>
<area shape="rect" title=" " alt="" coords="64,5,115,31"/>
<area shape="poly" title=" " alt="" coords="92,44,92,79,87,79,87,44"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for entt::basic_reactive_mixin&lt; Type, Registry &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classentt_1_1basic__reactive__mixin__coll__graph.png" border="0" usemap="#aentt_1_1basic__reactive__mixin_3_01Type_00_01Registry_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="aentt_1_1basic__reactive__mixin_3_01Type_00_01Registry_01_4_coll__map" id="aentt_1_1basic__reactive__mixin_3_01Type_00_01Registry_01_4_coll__map">
<area shape="rect" title="Mixin type used to add reactive support to storage types." alt="" coords="5,79,173,119"/>
<area shape="rect" title=" " alt="" coords="64,5,115,31"/>
<area shape="poly" title=" " alt="" coords="92,44,92,79,87,79,87,44"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a838cdfaecf9e58c0786bea956453a05c" id="r_a838cdfaecf9e58c0786bea956453a05c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a838cdfaecf9e58c0786bea956453a05c">allocator_type</a> = typename underlying_type::allocator_type</td></tr>
<tr class="memdesc:a838cdfaecf9e58c0786bea956453a05c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator type. <br /></td></tr>
<tr class="separator:a838cdfaecf9e58c0786bea956453a05c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2878e10703e6ba6456c7c45f35bfa55" id="r_aa2878e10703e6ba6456c7c45f35bfa55"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa2878e10703e6ba6456c7c45f35bfa55">entity_type</a> = typename underlying_type::entity_type</td></tr>
<tr class="memdesc:aa2878e10703e6ba6456c7c45f35bfa55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:aa2878e10703e6ba6456c7c45f35bfa55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad229496ac95debff57e7999efb49bb10" id="r_ad229496ac95debff57e7999efb49bb10"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad229496ac95debff57e7999efb49bb10">registry_type</a> = owner_type</td></tr>
<tr class="memdesc:ad229496ac95debff57e7999efb49bb10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expected registry type. <br /></td></tr>
<tr class="separator:ad229496ac95debff57e7999efb49bb10"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a5f95e4f7cf9cfaf3a169db75dc0c147b" id="r_a5f95e4f7cf9cfaf3a169db75dc0c147b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5f95e4f7cf9cfaf3a169db75dc0c147b">basic_reactive_mixin</a> ()</td></tr>
<tr class="memdesc:a5f95e4f7cf9cfaf3a169db75dc0c147b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:a5f95e4f7cf9cfaf3a169db75dc0c147b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24156d6ae47d5b777b6be8a9ba7aa99f" id="r_a24156d6ae47d5b777b6be8a9ba7aa99f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a24156d6ae47d5b777b6be8a9ba7aa99f">basic_reactive_mixin</a> (const <a class="el" href="#a838cdfaecf9e58c0786bea956453a05c">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:a24156d6ae47d5b777b6be8a9ba7aa99f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty storage with a given allocator. <br /></td></tr>
<tr class="separator:a24156d6ae47d5b777b6be8a9ba7aa99f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca2d1ec327b157a1a7f41c7935a98832" id="r_aca2d1ec327b157a1a7f41c7935a98832"><td class="memItemLeft" align="right" valign="top"><a id="aca2d1ec327b157a1a7f41c7935a98832" name="aca2d1ec327b157a1a7f41c7935a98832"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_reactive_mixin</b> (const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;)=delete</td></tr>
<tr class="memdesc:aca2d1ec327b157a1a7f41c7935a98832"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy constructor, deleted on purpose. <br /></td></tr>
<tr class="separator:aca2d1ec327b157a1a7f41c7935a98832"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a0067a81152d2bfbec2723e0664461a" id="r_a3a0067a81152d2bfbec2723e0664461a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3a0067a81152d2bfbec2723e0664461a">basic_reactive_mixin</a> (<a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&amp;other) noexcept</td></tr>
<tr class="memdesc:a3a0067a81152d2bfbec2723e0664461a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move constructor. <br /></td></tr>
<tr class="separator:a3a0067a81152d2bfbec2723e0664461a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8327edcef07c577a904fee0ef5f7a64e" id="r_a8327edcef07c577a904fee0ef5f7a64e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8327edcef07c577a904fee0ef5f7a64e">basic_reactive_mixin</a> (<a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&amp;other, const <a class="el" href="#a838cdfaecf9e58c0786bea956453a05c">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:a8327edcef07c577a904fee0ef5f7a64e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator-extended move constructor. <br /></td></tr>
<tr class="separator:a8327edcef07c577a904fee0ef5f7a64e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bafc1c76baa384839156e2d672bcc43" id="r_a6bafc1c76baa384839156e2d672bcc43"><td class="memItemLeft" align="right" valign="top"><a id="a6bafc1c76baa384839156e2d672bcc43" name="a6bafc1c76baa384839156e2d672bcc43"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>~basic_reactive_mixin</b> () override=default</td></tr>
<tr class="memdesc:a6bafc1c76baa384839156e2d672bcc43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:a6bafc1c76baa384839156e2d672bcc43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae24f79e5531d76a1518efa34aa3a6e94" id="r_ae24f79e5531d76a1518efa34aa3a6e94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae24f79e5531d76a1518efa34aa3a6e94">operator=</a> (const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;)=delete</td></tr>
<tr class="memdesc:ae24f79e5531d76a1518efa34aa3a6e94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy assignment operator, deleted on purpose. <br /></td></tr>
<tr class="separator:ae24f79e5531d76a1518efa34aa3a6e94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04cc8d9b1069319225e47cfd8feb8375" id="r_a04cc8d9b1069319225e47cfd8feb8375"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a04cc8d9b1069319225e47cfd8feb8375">operator=</a> (<a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&amp;other) noexcept</td></tr>
<tr class="memdesc:a04cc8d9b1069319225e47cfd8feb8375"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move assignment operator. <br /></td></tr>
<tr class="separator:a04cc8d9b1069319225e47cfd8feb8375"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3eb5ddbf128303f1339f3b513168c26" id="r_af3eb5ddbf128303f1339f3b513168c26"><td class="memTemplParams" colspan="2">template&lt;typename Clazz, auto Candidate = &amp;basic_reactive_mixin::emplace_element&gt; </td></tr>
<tr class="memitem:af3eb5ddbf128303f1339f3b513168c26"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#af3eb5ddbf128303f1339f3b513168c26">on_construct</a> (const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> id=<a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt; Clazz &gt;::value())</td></tr>
<tr class="memdesc:af3eb5ddbf128303f1339f3b513168c26"><td class="mdescLeft">&#160;</td><td class="mdescRight">Makes storage <em>react</em> to creation of objects of the given type. <br /></td></tr>
<tr class="separator:af3eb5ddbf128303f1339f3b513168c26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbfcbbb0f1f889fba12104643a29beff" id="r_acbfcbbb0f1f889fba12104643a29beff"><td class="memTemplParams" colspan="2">template&lt;typename Clazz, auto Candidate = &amp;basic_reactive_mixin::emplace_element&gt; </td></tr>
<tr class="memitem:acbfcbbb0f1f889fba12104643a29beff"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#acbfcbbb0f1f889fba12104643a29beff">on_update</a> (const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> id=<a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt; Clazz &gt;::value())</td></tr>
<tr class="memdesc:acbfcbbb0f1f889fba12104643a29beff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Makes storage <em>react</em> to update of objects of the given type. <br /></td></tr>
<tr class="separator:acbfcbbb0f1f889fba12104643a29beff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4e2176d8715837b780eae5f29375a01" id="r_ad4e2176d8715837b780eae5f29375a01"><td class="memTemplParams" colspan="2">template&lt;typename Clazz, auto Candidate = &amp;basic_reactive_mixin::emplace_element&gt; </td></tr>
<tr class="memitem:ad4e2176d8715837b780eae5f29375a01"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#ad4e2176d8715837b780eae5f29375a01">on_destroy</a> (const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a> id=<a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt; Clazz &gt;::value())</td></tr>
<tr class="memdesc:ad4e2176d8715837b780eae5f29375a01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Makes storage <em>react</em> to destruction of objects of the given type. <br /></td></tr>
<tr class="separator:ad4e2176d8715837b780eae5f29375a01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07f2a09ede7efaff93491e720d0ea081" id="r_a07f2a09ede7efaff93491e720d0ea081"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a07f2a09ede7efaff93491e720d0ea081">operator bool</a> () const noexcept</td></tr>
<tr class="memdesc:a07f2a09ede7efaff93491e720d0ea081"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a mixin refers to a valid registry. <br /></td></tr>
<tr class="separator:a07f2a09ede7efaff93491e720d0ea081"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2dcb5310a91c138c64ef59865642f10f" id="r_a2dcb5310a91c138c64ef59865642f10f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="#ad229496ac95debff57e7999efb49bb10">registry_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2dcb5310a91c138c64ef59865642f10f">registry</a> () const noexcept</td></tr>
<tr class="memdesc:a2dcb5310a91c138c64ef59865642f10f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the underlying registry, if any. <br /></td></tr>
<tr class="separator:a2dcb5310a91c138c64ef59865642f10f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada350d4506f51f1d7ef3e29493fcda61" id="r_ada350d4506f51f1d7ef3e29493fcda61"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#ad229496ac95debff57e7999efb49bb10">registry_type</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ada350d4506f51f1d7ef3e29493fcda61">registry</a> () noexcept</td></tr>
<tr class="memdesc:ada350d4506f51f1d7ef3e29493fcda61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the underlying registry, if any. <br /></td></tr>
<tr class="separator:ada350d4506f51f1d7ef3e29493fcda61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7902400038df582034a750f134b458f1" id="r_a7902400038df582034a750f134b458f1"><td class="memTemplParams" colspan="2">template&lt;typename... Get, typename... Exclude&gt; </td></tr>
<tr class="memitem:a7902400038df582034a750f134b458f1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__view.html">basic_view</a>&lt; <a class="el" href="structentt_1_1get__t.html">get_t</a>&lt; const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>, typename basic_registry_type::template storage_for_type&lt; const Get &gt;... &gt;, <a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; typename basic_registry_type::template storage_for_type&lt; const Exclude &gt;... &gt; &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a7902400038df582034a750f134b458f1">view</a> (<a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; Exclude... &gt;=<a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>{}) const</td></tr>
<tr class="memdesc:a7902400038df582034a750f134b458f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a view that is filtered by the underlying storage. <br /></td></tr>
<tr class="separator:a7902400038df582034a750f134b458f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34198add8a7511e33e26f57fbaa3b6b5" id="r_a34198add8a7511e33e26f57fbaa3b6b5"><td class="memTemplParams" colspan="2">template&lt;typename... Get, typename... Exclude&gt; </td></tr>
<tr class="memitem:a34198add8a7511e33e26f57fbaa3b6b5"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__view.html">basic_view</a>&lt; <a class="el" href="structentt_1_1get__t.html">get_t</a>&lt; const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>, typename basic_registry_type::template storage_for_type&lt; Get &gt;... &gt;, <a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; typename basic_registry_type::template storage_for_type&lt; Exclude &gt;... &gt; &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a34198add8a7511e33e26f57fbaa3b6b5">view</a> (<a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; Exclude... &gt;=<a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>{})</td></tr>
<tr class="memdesc:a34198add8a7511e33e26f57fbaa3b6b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a view that is filtered by the underlying storage. <br /></td></tr>
<tr class="separator:a34198add8a7511e33e26f57fbaa3b6b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13ecbd5a8b7b87e5bbead511c161fe66" id="r_a13ecbd5a8b7b87e5bbead511c161fe66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a13ecbd5a8b7b87e5bbead511c161fe66">reset</a> ()</td></tr>
<tr class="memdesc:a13ecbd5a8b7b87e5bbead511c161fe66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases all connections to the underlying registry, if any. <br /></td></tr>
<tr class="separator:a13ecbd5a8b7b87e5bbead511c161fe66"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Type, typename Registry&gt;<br />
class entt::basic_reactive_mixin&lt; Type, Registry &gt;</div><p>Mixin type used to add <em>reactive</em> support to storage types. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Underlying storage type. </td></tr>
<tr><td class="paramname">Registry</td><td>Basic registry type. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00394">394</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a838cdfaecf9e58c0786bea956453a05c" name="a838cdfaecf9e58c0786bea956453a05c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a838cdfaecf9e58c0786bea956453a05c">&#9670;&#160;</a></span>allocator_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::allocator_type = typename underlying_type::allocator_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator type. </p>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00430">430</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="aa2878e10703e6ba6456c7c45f35bfa55" name="aa2878e10703e6ba6456c7c45f35bfa55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2878e10703e6ba6456c7c45f35bfa55">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::entity_type = typename underlying_type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00432">432</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="ad229496ac95debff57e7999efb49bb10" name="ad229496ac95debff57e7999efb49bb10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad229496ac95debff57e7999efb49bb10">&#9670;&#160;</a></span>registry_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::registry_type = owner_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Expected registry type. </p>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00434">434</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a5f95e4f7cf9cfaf3a169db75dc0c147b" name="a5f95e4f7cf9cfaf3a169db75dc0c147b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f95e4f7cf9cfaf3a169db75dc0c147b">&#9670;&#160;</a></span>basic_reactive_mixin() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::basic_reactive_mixin </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default constructor. </p>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00437">437</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a24156d6ae47d5b777b6be8a9ba7aa99f" name="a24156d6ae47d5b777b6be8a9ba7aa99f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24156d6ae47d5b777b6be8a9ba7aa99f">&#9670;&#160;</a></span>basic_reactive_mixin() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::basic_reactive_mixin </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a838cdfaecf9e58c0786bea956453a05c">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an empty storage with a given allocator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00444">444</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a3a0067a81152d2bfbec2723e0664461a" name="a3a0067a81152d2bfbec2723e0664461a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a0067a81152d2bfbec2723e0664461a">&#9670;&#160;</a></span>basic_reactive_mixin() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::basic_reactive_mixin </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>&lt; Type, Registry &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00458">458</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a8327edcef07c577a904fee0ef5f7a64e" name="a8327edcef07c577a904fee0ef5f7a64e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8327edcef07c577a904fee0ef5f7a64e">&#9670;&#160;</a></span>basic_reactive_mixin() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::basic_reactive_mixin </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>&lt; Type, Registry &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#a838cdfaecf9e58c0786bea956453a05c">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator-extended move constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00471">471</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="af3eb5ddbf128303f1339f3b513168c26" name="af3eb5ddbf128303f1339f3b513168c26"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3eb5ddbf128303f1339f3b513168c26">&#9670;&#160;</a></span>on_construct()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename Clazz, auto Candidate = &amp;basic_reactive_mixin::emplace_element&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::on_construct </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a></td> <td class="paramname"><span class="paramname"><em>id</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt;Clazz&gt;::value()</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Makes storage <em>react</em> to creation of objects of the given type. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Clazz</td><td>Type of element to <em>react</em> to. </td></tr>
<tr><td class="paramname">Candidate</td><td>Function to use to <em>react</em> to the event. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>Optional name used to map the storage within the registry. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This mixin. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00505">505</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="ad4e2176d8715837b780eae5f29375a01" name="ad4e2176d8715837b780eae5f29375a01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4e2176d8715837b780eae5f29375a01">&#9670;&#160;</a></span>on_destroy()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename Clazz, auto Candidate = &amp;basic_reactive_mixin::emplace_element&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::on_destroy </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a></td> <td class="paramname"><span class="paramname"><em>id</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt;Clazz&gt;::value()</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Makes storage <em>react</em> to destruction of objects of the given type. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Clazz</td><td>Type of element to <em>react</em> to. </td></tr>
<tr><td class="paramname">Candidate</td><td>Function to use to <em>react</em> to the event. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>Optional name used to map the storage within the registry. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This mixin. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00533">533</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="acbfcbbb0f1f889fba12104643a29beff" name="acbfcbbb0f1f889fba12104643a29beff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbfcbbb0f1f889fba12104643a29beff">&#9670;&#160;</a></span>on_update()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename Clazz, auto Candidate = &amp;basic_reactive_mixin::emplace_element&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::on_update </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespaceentt.html#a620d583c0e6d64acf3d394524bb72303">id_type</a></td> <td class="paramname"><span class="paramname"><em>id</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="structentt_1_1type__hash.html">type_hash</a>&lt;Clazz&gt;::value()</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Makes storage <em>react</em> to update of objects of the given type. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Clazz</td><td>Type of element to <em>react</em> to. </td></tr>
<tr><td class="paramname">Candidate</td><td>Function to use to <em>react</em> to the event. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>Optional name used to map the storage within the registry. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This mixin. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00519">519</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a07f2a09ede7efaff93491e720d0ea081" name="a07f2a09ede7efaff93491e720d0ea081"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07f2a09ede7efaff93491e720d0ea081">&#9670;&#160;</a></span>operator bool()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::operator bool </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if a mixin refers to a valid registry. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the mixin refers to a valid registry, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00543">543</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a04cc8d9b1069319225e47cfd8feb8375" name="a04cc8d9b1069319225e47cfd8feb8375"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04cc8d9b1069319225e47cfd8feb8375">&#9670;&#160;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>&lt; Type, Registry &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move assignment operator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This mixin. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00492">492</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="ae24f79e5531d76a1518efa34aa3a6e94" name="ae24f79e5531d76a1518efa34aa3a6e94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae24f79e5531d76a1518efa34aa3a6e94">&#9670;&#160;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>&lt; Type, Registry &gt; &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel delete">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default copy assignment operator, deleted on purpose. </p>
<dl class="section return"><dt>Returns</dt><dd>This mixin. </dd></dl>
</div>
</div>
<a id="a2dcb5310a91c138c64ef59865642f10f" name="a2dcb5310a91c138c64ef59865642f10f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2dcb5310a91c138c64ef59865642f10f">&#9670;&#160;</a></span>registry() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="#ad229496ac95debff57e7999efb49bb10">registry_type</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::registry </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a pointer to the underlying registry, if any. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the underlying registry, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00551">551</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="ada350d4506f51f1d7ef3e29493fcda61" name="ada350d4506f51f1d7ef3e29493fcda61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada350d4506f51f1d7ef3e29493fcda61">&#9670;&#160;</a></span>registry() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#ad229496ac95debff57e7999efb49bb10">registry_type</a> &amp; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::registry </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a pointer to the underlying registry, if any. </p>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the underlying registry, if any. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00556">556</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a13ecbd5a8b7b87e5bbead511c161fe66" name="a13ecbd5a8b7b87e5bbead511c161fe66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13ecbd5a8b7b87e5bbead511c161fe66">&#9670;&#160;</a></span>reset()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::reset </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Releases all connections to the underlying registry, if any. </p>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00584">584</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a34198add8a7511e33e26f57fbaa3b6b5" name="a34198add8a7511e33e26f57fbaa3b6b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34198add8a7511e33e26f57fbaa3b6b5">&#9670;&#160;</a></span>view() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename... Get, typename... Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__view.html">basic_view</a>&lt; <a class="el" href="structentt_1_1get__t.html">get_t</a>&lt; const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>, typename basic_registry_type::template storage_for_type&lt; Get &gt;... &gt;, <a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; typename basic_registry_type::template storage_for_type&lt; Exclude &gt;... &gt; &gt; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::view </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; Exclude... &gt;</td> <td class="paramname"><span class="paramname"><em></em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>{}</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a view that is filtered by the underlying storage. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Get</td><td>Types of elements used to construct the view. </td></tr>
<tr><td class="paramname">Exclude</td><td>Types of elements used to filter the view. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A newly created view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00578">578</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<a id="a7902400038df582034a750f134b458f1" name="a7902400038df582034a750f134b458f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7902400038df582034a750f134b458f1">&#9670;&#160;</a></span>view() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Registry&gt; </div>
<div class="memtemplate">
template&lt;typename... Get, typename... Exclude&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__view.html">basic_view</a>&lt; <a class="el" href="structentt_1_1get__t.html">get_t</a>&lt; const <a class="el" href="classentt_1_1basic__reactive__mixin.html">basic_reactive_mixin</a>, typename basic_registry_type::template storage_for_type&lt; const Get &gt;... &gt;, <a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; typename basic_registry_type::template storage_for_type&lt; const Exclude &gt;... &gt; &gt; <a class="el" href="classentt_1_1basic__reactive__mixin.html">entt::basic_reactive_mixin</a>&lt; Type, Registry &gt;::view </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>&lt; Exclude... &gt;</td> <td class="paramname"><span class="paramname"><em></em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="structentt_1_1exclude__t.html">exclude_t</a>{}</span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a view that is filtered by the underlying storage. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Get</td><td>Types of elements used to construct the view. </td></tr>
<tr><td class="paramname">Exclude</td><td>Types of elements used to filter the view. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A newly created view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="mixin_8hpp_source.html#l00568">568</a> of file <a class="el" href="mixin_8hpp_source.html">mixin.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/entity/<a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/entity/<a class="el" href="mixin_8hpp_source.html">mixin.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
@@ -0,0 +1,5 @@
<map id="entt::basic_reactive_mixin&lt; Type, Registry &gt;" name="entt::basic_reactive_mixin&lt; Type, Registry &gt;">
<area shape="rect" id="Node000001" title="Mixin type used to add reactive support to storage types." alt="" coords="5,79,173,119"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="64,5,115,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="92,44,92,79,87,79,87,44"/>
</map>
@@ -0,0 +1 @@
19473f9646b9922753b01bfbc7aa694e
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,5 @@
<map id="entt::basic_reactive_mixin&lt; Type, Registry &gt;" name="entt::basic_reactive_mixin&lt; Type, Registry &gt;">
<area shape="rect" id="Node000001" title="Mixin type used to add reactive support to storage types." alt="" coords="5,79,173,119"/>
<area shape="rect" id="Node000002" title=" " alt="" coords="64,5,115,31"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="92,44,92,79,87,79,87,44"/>
</map>
@@ -0,0 +1 @@
19473f9646b9922753b01bfbc7aa694e
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

+171
View File
@@ -0,0 +1,171 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__registry.html">basic_registry</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_registry&lt; Entity, Allocator &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a463b15da6bfe18744e595c082ef70bac">all_of</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a9ce6e0e7aa3c23f3819290c41e78c023">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a0bcc0d120d7bbe348242a1c3227af8fc">any_of</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#afb2496f183300f9f9b7ae24617df0a3c">basic_registry</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ab66e63c6c5398d5a0c9fc40d2fe8201f">basic_registry</a>(const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a1b6c762063ff48a0f4ca8efa063ebd53">basic_registry</a>(const size_type count, const allocator_type &amp;allocator=allocator_type{})</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#af096d2149b6cc869875319aa22066e69">basic_registry</a>(const basic_registry &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ac5cfdf43791119f4ab2d6976bec62644">basic_registry</a>(basic_registry &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a65ae6a29493a09a3c19e83748bae6a7e">clear</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a4d204691f73d602c9f46f3127caf8c81">common_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ac9008dbd303d18cccf1ef7f279637347">compact</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#af28295b4eed2182fe6c7fd6287e98d8e">const_iterable</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#af26a23d71ff7ba51457dc54021b41be7">context</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a4ab0e3ed31fb0c455c07d0541941108a">create</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a6366705dc2f7db448434ce17e1403884">create</a>(const entity_type hint)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a5dee7d7c5329e5fd29bcfbe4a5a4842a">create</a>(It first, It last)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a063e7f4879b50fcd332702bc8cc0fa61">ctx</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a4ad88b333d9c2ac606b322532a921e40">ctx</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ad953b537b28f0f8d590e77b81faa1941">current</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a4849d0fe9d6008431239c93c57551d10">destroy</a>(const entity_type entt)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a4e957182d72fd24e436afda55ec25e33">destroy</a>(const entity_type entt, const version_type version)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a90f87bda5906f0a26d118a4d058f376d">destroy</a>(It first, It last)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#aa3cd5a28e32c30e5c69965c52781bf98">emplace</a>(const entity_type entt, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a3ebfbe0d897e77cf0f24bc994a796b15">emplace_or_replace</a>(const entity_type entt, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#abdeb17d13b9834969282c5e8a930656d">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#afc89c98a7fdc0d6083b2ae23682bc4a9">erase</a>(const entity_type entt)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a9b66704f3f810bc45996802c9197b0d6">erase</a>(It first, It last)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a477abaa59c9e8a9a965c3bcbae103341">erase_if</a>(const entity_type entt, Func func)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#abe347a879e04298df37c19b757f6ab08">get</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a96d520486439b2017faef0c7c399ea11">get</a>(const entity_type entt)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#aa0db3b1ef8738ee88b164f0f9530961b">get_allocator</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a13eee32008020e19e15ccc87f4025a2e">get_or_emplace</a>(const entity_type entt, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ade9bff8409333c2e85c33411b09998f1">group</a>(get_t&lt; Get... &gt;=get_t{}, exclude_t&lt; Exclude... &gt;=exclude_t{})</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a7e1bde3245d81f921be211cef7df5c7f">group_if_exists</a>(get_t&lt; Get... &gt;=get_t{}, exclude_t&lt; Exclude... &gt;=exclude_t{}) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ae299b32827f0667903d8564e10ca6774">insert</a>(It first, It last, const Type &amp;value={})</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ae4630a45e531d05669da84aa4a5e9778">insert</a>(EIt first, EIt last, CIt from)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a3b46298ebd98b1f89b3b8910838ea0eb">iterable</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ab68c1ba5692d30350d30121663203aea">on_construct</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a0984ffe101cfef78d7e755bbaed5842e">on_destroy</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a1b83f8586cfb519b7b966751094c5381">on_update</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#aaf838797891c1fe058679f96bd88f473">operator=</a>(const basic_registry &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a825a977af35627faca20c0ea388d10fa">operator=</a>(basic_registry &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a1b36843b380e02019ad88c455d6e6d17">orphan</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a0da9b805673a9753a4c9f6f1609e0d87">owned</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a77c108caf74d8fcce9f3fb94906cd4db">patch</a>(const entity_type entt, Func &amp;&amp;...func)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a7eb97ddee1a5ee98a722329fe39417ce">remove</a>(const entity_type entt)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a5f458b3df51b800632c350961947a2bb">remove</a>(It first, It last)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a1b4f1cccd495d17c550711fdc9606d4f">replace</a>(const entity_type entt, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a6f2548bae0c7a80e4adf8b8ad4e4cc11">reset</a>(const id_type id)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#abfa63598b862f2cb713db6f9779656c7">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a9f8467476bc59f55a9297bd4e93f4914">sort</a>(Compare compare, Sort algo=Sort{}, Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a4bf0e6bf722ed1eae4bd9f7777378ca6">sort</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a3ffe409b0f7201456b1c1d32c0850474">storage</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ace5a18c1fe5b72dbdbf53cb981c00879">storage</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a901e410db646d5318aa6ac7cabfe6218">storage</a>(const id_type id)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a2bdc9d44e99459d93d2f43bdd1ca5df4">storage</a>(const id_type id) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#abb07bad50fa0f5bad0aabffe8ce24414">storage</a>(const id_type id=type_hash&lt; Type &gt;::value())</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ae414ee7b5315313e9987525727f6320b">storage</a>(const id_type id=type_hash&lt; Type &gt;::value()) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a99e000856991d365d5a8a9e619b5fd03">storage_for_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a394e38341a21d75194555e9ed57fe5ae">swap</a>(basic_registry &amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a2e423a67d88072b7e8126412d3ce41e5">try_get</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a88615f35264fae0e05f25766eab624fb">try_get</a>(const entity_type entt)</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a40d41cd623d5bf7ad95d75aef5e70a65">valid</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a49c533b43c29fad4b52bc10e4f390107">version_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a563374eb952f575470291d2a574176dc">view</a>(exclude_t&lt; Exclude... &gt;=exclude_t{}) const</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#a8388faa0bbae4dc1b1c74e2dff4af17f">view</a>(exclude_t&lt; Exclude... &gt;=exclude_t{})</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__registry.html#ad1a40bc7886d5e9382fc2d74d5c4574e">~basic_registry</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1basic__registry.html">entt::basic_registry&lt; Entity, Allocator &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,129 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_runtime_view&lt; Type, Allocator &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a14c8cb432c8ddbf865f79d2765f02400">basic_runtime_view</a>() noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a262d2b09f30d57e67a6e8028c016b637">basic_runtime_view</a>(const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a0f89fdc9d23992e1c86c3306ad012292">basic_runtime_view</a>(const basic_runtime_view &amp;)=default</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#ad96d2f1aaa57c82c9330e8f64f0e83fb">basic_runtime_view</a>(const basic_runtime_view &amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#afef04d25b27c5226bb2b0bbf073501cf">basic_runtime_view</a>(basic_runtime_view &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#ae977102b64bd4eff2e1c903bddf58492">basic_runtime_view</a>(basic_runtime_view &amp;&amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a140fca2ae84d1dcb861f4b106cd75f29">begin</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#aba28ae42bd739ad6ffe2951f9213c7cd">clear</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#acc80c6c7de3e3020edeb51296050eb43">common_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a8ff8f51d9d329fd39633960e1f79994f">contains</a>(const entity_type entt) const</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a9477a9767c87dee34b144b687dfa66ae">each</a>(Func func) const</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#abd8f3fcaf66b7ee4cb033aa9ba13b807">end</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#abb7738cda0849f733d0eab14831b7809">entity_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a96aac4e03af23f9c49900f43a8b6d6b8">exclude</a>(common_type &amp;base)</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a7461d8fe5d56fa8d1c5ec997f2b086c6">get_allocator</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#ae3d9cd9d4afe45ab70b76902ff600e20">iterate</a>(common_type &amp;base)</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a46936cbc64be35947bf709b67cef5f3f">iterator</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#ae60420edc7a111866fd4164d060cc513">operator bool</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a554579a85e4c40fd1506949c01706c27">operator=</a>(const basic_runtime_view &amp;)=default</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#abf9d409908a25e0eb7123a52f803c43b">operator=</a>(basic_runtime_view &amp;&amp;) noexcept=default</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#acc18bd1f09d3df3e0373e8024601e2b2">size_hint</a>() const</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#af1b166605a31e752ec85b4a5ddf29e64">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#adfcdaca31934517a51d1993f0a4f6cfd">swap</a>(basic_runtime_view &amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html#a8f374ce6d3122f0ddf71db2f8f8083a8">~basic_runtime_view</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view&lt; Type, Allocator &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+928
View File
@@ -0,0 +1,928 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_runtime_view&lt; Type, Allocator &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1basic__runtime__view-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_runtime_view&lt; Type, Allocator &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Generic runtime view.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ab1a56d98d4a7c875fe7a6fa8d12dec1f" id="r_ab1a56d98d4a7c875fe7a6fa8d12dec1f"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> = Allocator</td></tr>
<tr class="memdesc:ab1a56d98d4a7c875fe7a6fa8d12dec1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator type. <br /></td></tr>
<tr class="separator:ab1a56d98d4a7c875fe7a6fa8d12dec1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb7738cda0849f733d0eab14831b7809" id="r_abb7738cda0849f733d0eab14831b7809"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abb7738cda0849f733d0eab14831b7809">entity_type</a> = typename Type::entity_type</td></tr>
<tr class="memdesc:abb7738cda0849f733d0eab14831b7809"><td class="mdescLeft">&#160;</td><td class="mdescRight">Underlying entity identifier. <br /></td></tr>
<tr class="separator:abb7738cda0849f733d0eab14831b7809"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1b166605a31e752ec85b4a5ddf29e64" id="r_af1b166605a31e752ec85b4a5ddf29e64"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af1b166605a31e752ec85b4a5ddf29e64">size_type</a> = std::size_t</td></tr>
<tr class="memdesc:af1b166605a31e752ec85b4a5ddf29e64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:af1b166605a31e752ec85b4a5ddf29e64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc80c6c7de3e3020edeb51296050eb43" id="r_acc80c6c7de3e3020edeb51296050eb43"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a> = Type</td></tr>
<tr class="memdesc:acc80c6c7de3e3020edeb51296050eb43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common type among all storage types. <br /></td></tr>
<tr class="separator:acc80c6c7de3e3020edeb51296050eb43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46936cbc64be35947bf709b67cef5f3f" id="r_a46936cbc64be35947bf709b67cef5f3f"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a46936cbc64be35947bf709b67cef5f3f">iterator</a> = internal::runtime_view_iterator&lt;<a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a>&gt;</td></tr>
<tr class="memdesc:a46936cbc64be35947bf709b67cef5f3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bidirectional iterator type. <br /></td></tr>
<tr class="separator:a46936cbc64be35947bf709b67cef5f3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a14c8cb432c8ddbf865f79d2765f02400" id="r_a14c8cb432c8ddbf865f79d2765f02400"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a14c8cb432c8ddbf865f79d2765f02400">basic_runtime_view</a> () noexcept</td></tr>
<tr class="memdesc:a14c8cb432c8ddbf865f79d2765f02400"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor to use to create empty, invalid views. <br /></td></tr>
<tr class="separator:a14c8cb432c8ddbf865f79d2765f02400"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a262d2b09f30d57e67a6e8028c016b637" id="r_a262d2b09f30d57e67a6e8028c016b637"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a262d2b09f30d57e67a6e8028c016b637">basic_runtime_view</a> (const <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:a262d2b09f30d57e67a6e8028c016b637"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs an empty, invalid view with a given allocator. <br /></td></tr>
<tr class="separator:a262d2b09f30d57e67a6e8028c016b637"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f89fdc9d23992e1c86c3306ad012292" id="r_a0f89fdc9d23992e1c86c3306ad012292"><td class="memItemLeft" align="right" valign="top"><a id="a0f89fdc9d23992e1c86c3306ad012292" name="a0f89fdc9d23992e1c86c3306ad012292"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_runtime_view</b> (const <a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;)=default</td></tr>
<tr class="memdesc:a0f89fdc9d23992e1c86c3306ad012292"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy constructor. <br /></td></tr>
<tr class="separator:a0f89fdc9d23992e1c86c3306ad012292"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad96d2f1aaa57c82c9330e8f64f0e83fb" id="r_ad96d2f1aaa57c82c9330e8f64f0e83fb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad96d2f1aaa57c82c9330e8f64f0e83fb">basic_runtime_view</a> (const <a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;other, const <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:ad96d2f1aaa57c82c9330e8f64f0e83fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator-extended copy constructor. <br /></td></tr>
<tr class="separator:ad96d2f1aaa57c82c9330e8f64f0e83fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afef04d25b27c5226bb2b0bbf073501cf" id="r_afef04d25b27c5226bb2b0bbf073501cf"><td class="memItemLeft" align="right" valign="top"><a id="afef04d25b27c5226bb2b0bbf073501cf" name="afef04d25b27c5226bb2b0bbf073501cf"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_runtime_view</b> (<a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&amp;) noexcept=default</td></tr>
<tr class="memdesc:afef04d25b27c5226bb2b0bbf073501cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move constructor. <br /></td></tr>
<tr class="separator:afef04d25b27c5226bb2b0bbf073501cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae977102b64bd4eff2e1c903bddf58492" id="r_ae977102b64bd4eff2e1c903bddf58492"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae977102b64bd4eff2e1c903bddf58492">basic_runtime_view</a> (<a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&amp;other, const <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:ae977102b64bd4eff2e1c903bddf58492"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator-extended move constructor. <br /></td></tr>
<tr class="separator:ae977102b64bd4eff2e1c903bddf58492"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f374ce6d3122f0ddf71db2f8f8083a8" id="r_a8f374ce6d3122f0ddf71db2f8f8083a8"><td class="memItemLeft" align="right" valign="top"><a id="a8f374ce6d3122f0ddf71db2f8f8083a8" name="a8f374ce6d3122f0ddf71db2f8f8083a8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>~basic_runtime_view</b> ()=default</td></tr>
<tr class="memdesc:a8f374ce6d3122f0ddf71db2f8f8083a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:a8f374ce6d3122f0ddf71db2f8f8083a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a554579a85e4c40fd1506949c01706c27" id="r_a554579a85e4c40fd1506949c01706c27"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a554579a85e4c40fd1506949c01706c27">operator=</a> (const <a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;)=default</td></tr>
<tr class="memdesc:a554579a85e4c40fd1506949c01706c27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy assignment operator. <br /></td></tr>
<tr class="separator:a554579a85e4c40fd1506949c01706c27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf9d409908a25e0eb7123a52f803c43b" id="r_abf9d409908a25e0eb7123a52f803c43b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abf9d409908a25e0eb7123a52f803c43b">operator=</a> (<a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&amp;) noexcept=default</td></tr>
<tr class="memdesc:abf9d409908a25e0eb7123a52f803c43b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move assignment operator. <br /></td></tr>
<tr class="separator:abf9d409908a25e0eb7123a52f803c43b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfcdaca31934517a51d1993f0a4f6cfd" id="r_adfcdaca31934517a51d1993f0a4f6cfd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adfcdaca31934517a51d1993f0a4f6cfd">swap</a> (<a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;other) noexcept</td></tr>
<tr class="memdesc:adfcdaca31934517a51d1993f0a4f6cfd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchanges the contents with those of a given view. <br /></td></tr>
<tr class="separator:adfcdaca31934517a51d1993f0a4f6cfd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7461d8fe5d56fa8d1c5ec997f2b086c6" id="r_a7461d8fe5d56fa8d1c5ec997f2b086c6"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7461d8fe5d56fa8d1c5ec997f2b086c6">get_allocator</a> () const noexcept</td></tr>
<tr class="memdesc:a7461d8fe5d56fa8d1c5ec997f2b086c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the associated allocator. <br /></td></tr>
<tr class="separator:a7461d8fe5d56fa8d1c5ec997f2b086c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba28ae42bd739ad6ffe2951f9213c7cd" id="r_aba28ae42bd739ad6ffe2951f9213c7cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aba28ae42bd739ad6ffe2951f9213c7cd">clear</a> ()</td></tr>
<tr class="memdesc:aba28ae42bd739ad6ffe2951f9213c7cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the view. <br /></td></tr>
<tr class="separator:aba28ae42bd739ad6ffe2951f9213c7cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3d9cd9d4afe45ab70b76902ff600e20" id="r_ae3d9cd9d4afe45ab70b76902ff600e20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae3d9cd9d4afe45ab70b76902ff600e20">iterate</a> (<a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a> &amp;base)</td></tr>
<tr class="memdesc:ae3d9cd9d4afe45ab70b76902ff600e20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Appends an opaque storage object to a runtime view. <br /></td></tr>
<tr class="separator:ae3d9cd9d4afe45ab70b76902ff600e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96aac4e03af23f9c49900f43a8b6d6b8" id="r_a96aac4e03af23f9c49900f43a8b6d6b8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a96aac4e03af23f9c49900f43a8b6d6b8">exclude</a> (<a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a> &amp;base)</td></tr>
<tr class="memdesc:a96aac4e03af23f9c49900f43a8b6d6b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an opaque storage object as a filter of a runtime view. <br /></td></tr>
<tr class="separator:a96aac4e03af23f9c49900f43a8b6d6b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc18bd1f09d3df3e0373e8024601e2b2" id="r_acc18bd1f09d3df3e0373e8024601e2b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#af1b166605a31e752ec85b4a5ddf29e64">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acc18bd1f09d3df3e0373e8024601e2b2">size_hint</a> () const</td></tr>
<tr class="memdesc:acc18bd1f09d3df3e0373e8024601e2b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Estimates the number of entities iterated by the view. <br /></td></tr>
<tr class="separator:acc18bd1f09d3df3e0373e8024601e2b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a140fca2ae84d1dcb861f4b106cd75f29" id="r_a140fca2ae84d1dcb861f4b106cd75f29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a46936cbc64be35947bf709b67cef5f3f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a140fca2ae84d1dcb861f4b106cd75f29">begin</a> () const</td></tr>
<tr class="memdesc:a140fca2ae84d1dcb861f4b106cd75f29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator to the first entity that has the given elements. <br /></td></tr>
<tr class="separator:a140fca2ae84d1dcb861f4b106cd75f29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd8f3fcaf66b7ee4cb033aa9ba13b807" id="r_abd8f3fcaf66b7ee4cb033aa9ba13b807"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a46936cbc64be35947bf709b67cef5f3f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abd8f3fcaf66b7ee4cb033aa9ba13b807">end</a> () const</td></tr>
<tr class="memdesc:abd8f3fcaf66b7ee4cb033aa9ba13b807"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns an iterator that is past the last entity that has the given elements. <br /></td></tr>
<tr class="separator:abd8f3fcaf66b7ee4cb033aa9ba13b807"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae60420edc7a111866fd4164d060cc513" id="r_ae60420edc7a111866fd4164d060cc513"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae60420edc7a111866fd4164d060cc513">operator bool</a> () const noexcept</td></tr>
<tr class="memdesc:ae60420edc7a111866fd4164d060cc513"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks whether a view is initialized or not. <br /></td></tr>
<tr class="separator:ae60420edc7a111866fd4164d060cc513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ff8f51d9d329fd39633960e1f79994f" id="r_a8ff8f51d9d329fd39633960e1f79994f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ff8f51d9d329fd39633960e1f79994f">contains</a> (const <a class="el" href="#abb7738cda0849f733d0eab14831b7809">entity_type</a> entt) const</td></tr>
<tr class="memdesc:a8ff8f51d9d329fd39633960e1f79994f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if a view contains an entity. <br /></td></tr>
<tr class="separator:a8ff8f51d9d329fd39633960e1f79994f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9477a9767c87dee34b144b687dfa66ae" id="r_a9477a9767c87dee34b144b687dfa66ae"><td class="memTemplParams" colspan="2">template&lt;typename Func&gt; </td></tr>
<tr class="memitem:a9477a9767c87dee34b144b687dfa66ae"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a9477a9767c87dee34b144b687dfa66ae">each</a> (Func func) const</td></tr>
<tr class="memdesc:a9477a9767c87dee34b144b687dfa66ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterates entities and applies the given function object to them. <br /></td></tr>
<tr class="separator:a9477a9767c87dee34b144b687dfa66ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Type, typename Allocator&gt;<br />
class entt::basic_runtime_view&lt; Type, Allocator &gt;</div><p>Generic runtime view. </p>
<p>Runtime views iterate over those entities that are at least in the given storage. During initialization, a runtime view looks at the number of entities available for each element and uses the smallest set in order to get a performance boost when iterating.</p>
<p><b>Important</b> </p>
<p>Iterators aren't invalidated if:</p>
<ul>
<li>New elements are added to the storage.</li>
<li>The entity currently pointed is modified (for example, elements are added or removed from it).</li>
<li>The entity currently pointed is destroyed.</li>
</ul>
<p>In all other cases, modifying the storage iterated by the view in any way invalidates all the iterators.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Type</td><td>Common base type. </td></tr>
<tr><td class="paramname">Allocator</td><td>Type of allocator used to manage memory and elements. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00124">124</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="ab1a56d98d4a7c875fe7a6fa8d12dec1f" name="ab1a56d98d4a7c875fe7a6fa8d12dec1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">&#9670;&#160;</a></span>allocator_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::allocator_type = Allocator</td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator type. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00131">131</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="acc80c6c7de3e3020edeb51296050eb43" name="acc80c6c7de3e3020edeb51296050eb43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc80c6c7de3e3020edeb51296050eb43">&#9670;&#160;</a></span>common_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::common_type = Type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Common type among all storage types. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00137">137</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="abb7738cda0849f733d0eab14831b7809" name="abb7738cda0849f733d0eab14831b7809"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb7738cda0849f733d0eab14831b7809">&#9670;&#160;</a></span>entity_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::entity_type = typename Type::entity_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Underlying entity identifier. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00133">133</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="a46936cbc64be35947bf709b67cef5f3f" name="a46936cbc64be35947bf709b67cef5f3f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46936cbc64be35947bf709b67cef5f3f">&#9670;&#160;</a></span>iterator</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::iterator = internal::runtime_view_iterator&lt;<a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a>&gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Bidirectional iterator type. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00139">139</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="af1b166605a31e752ec85b4a5ddf29e64" name="af1b166605a31e752ec85b4a5ddf29e64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1b166605a31e752ec85b4a5ddf29e64">&#9670;&#160;</a></span>size_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::size_type = std::size_t</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00135">135</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a14c8cb432c8ddbf865f79d2765f02400" name="a14c8cb432c8ddbf865f79d2765f02400"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14c8cb432c8ddbf865f79d2765f02400">&#9670;&#160;</a></span>basic_runtime_view() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::basic_runtime_view </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default constructor to use to create empty, invalid views. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00142">142</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="a262d2b09f30d57e67a6e8028c016b637" name="a262d2b09f30d57e67a6e8028c016b637"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a262d2b09f30d57e67a6e8028c016b637">&#9670;&#160;</a></span>basic_runtime_view() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::basic_runtime_view </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs an empty, invalid view with a given allocator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00149">149</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="ad96d2f1aaa57c82c9330e8f64f0e83fb" name="ad96d2f1aaa57c82c9330e8f64f0e83fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad96d2f1aaa57c82c9330e8f64f0e83fb">&#9670;&#160;</a></span>basic_runtime_view() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::basic_runtime_view </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a>&lt; Type, Allocator &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator-extended copy constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to copy from. </td></tr>
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00161">161</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="ae977102b64bd4eff2e1c903bddf58492" name="ae977102b64bd4eff2e1c903bddf58492"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae977102b64bd4eff2e1c903bddf58492">&#9670;&#160;</a></span>basic_runtime_view() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::basic_runtime_view </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a>&lt; Type, Allocator &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator-extended move constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00173">173</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a140fca2ae84d1dcb861f4b106cd75f29" name="a140fca2ae84d1dcb861f4b106cd75f29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a140fca2ae84d1dcb861f4b106cd75f29">&#9670;&#160;</a></span>begin()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a46936cbc64be35947bf709b67cef5f3f">iterator</a> <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::begin </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator to the first entity that has the given elements. </p>
<p>If the view is empty, the returned iterator will be equal to <code><a class="el" href="#abd8f3fcaf66b7ee4cb033aa9ba13b807" title="Returns an iterator that is past the last entity that has the given elements.">end()</a></code>.</p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the first entity that has the given elements. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00257">257</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="aba28ae42bd739ad6ffe2951f9213c7cd" name="aba28ae42bd739ad6ffe2951f9213c7cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba28ae42bd739ad6ffe2951f9213c7cd">&#9670;&#160;</a></span>clear()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::clear </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Clears the view. </p>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00211">211</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="a8ff8f51d9d329fd39633960e1f79994f" name="a8ff8f51d9d329fd39633960e1f79994f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ff8f51d9d329fd39633960e1f79994f">&#9670;&#160;</a></span>contains()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::contains </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#abb7738cda0849f733d0eab14831b7809">entity_type</a></td> <td class="paramname"><span class="paramname"><em>entt</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if a view contains an entity. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entt</td><td>A valid identifier. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the view contains the given entity, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00284">284</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="a9477a9767c87dee34b144b687dfa66ae" name="a9477a9767c87dee34b144b687dfa66ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9477a9767c87dee34b144b687dfa66ae">&#9670;&#160;</a></span>each()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<div class="memtemplate">
template&lt;typename Func&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::each </td>
<td>(</td>
<td class="paramtype">Func</td> <td class="paramname"><span class="paramname"><em>func</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Iterates entities and applies the given function object to them. </p>
<p>The function object is invoked for each entity. It is provided only with the entity itself.<br />
The signature of the function should be equivalent to the following:</p>
<div class="fragment"><div class="line">void(<span class="keyword">const</span> <a class="code hl_typedef" href="#abb7738cda0849f733d0eab14831b7809">entity_type</a>);</div>
<div class="ttc" id="aclassentt_1_1basic__runtime__view_html_abb7738cda0849f733d0eab14831b7809"><div class="ttname"><a href="#abb7738cda0849f733d0eab14831b7809">entt::basic_runtime_view::entity_type</a></div><div class="ttdeci">typename Type::entity_type entity_type</div><div class="ttdoc">Underlying entity identifier.</div><div class="ttdef"><b>Definition</b> <a href="runtime__view_8hpp_source.html#l00133">runtime_view.hpp:133</a></div></div>
</div><!-- fragment --><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Func</td><td>Type of the function object to invoke. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">func</td><td>A valid function object. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00305">305</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="abd8f3fcaf66b7ee4cb033aa9ba13b807" name="abd8f3fcaf66b7ee4cb033aa9ba13b807"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd8f3fcaf66b7ee4cb033aa9ba13b807">&#9670;&#160;</a></span>end()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a46936cbc64be35947bf709b67cef5f3f">iterator</a> <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::end </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns an iterator that is past the last entity that has the given elements. </p>
<dl class="section return"><dt>Returns</dt><dd>An iterator to the entity following the last entity that has the given elements. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00267">267</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="a96aac4e03af23f9c49900f43a8b6d6b8" name="a96aac4e03af23f9c49900f43a8b6d6b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96aac4e03af23f9c49900f43a8b6d6b8">&#9670;&#160;</a></span>exclude()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp; <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::exclude </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>base</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds an opaque storage object as a filter of a runtime view. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>An opaque reference to a storage object. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This runtime view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00236">236</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="a7461d8fe5d56fa8d1c5ec997f2b086c6" name="a7461d8fe5d56fa8d1c5ec997f2b086c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7461d8fe5d56fa8d1c5ec997f2b086c6">&#9670;&#160;</a></span>get_allocator()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#ab1a56d98d4a7c875fe7a6fa8d12dec1f">allocator_type</a> <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::get_allocator </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the associated allocator. </p>
<dl class="section return"><dt>Returns</dt><dd>The associated allocator. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00206">206</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="ae3d9cd9d4afe45ab70b76902ff600e20" name="ae3d9cd9d4afe45ab70b76902ff600e20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3d9cd9d4afe45ab70b76902ff600e20">&#9670;&#160;</a></span>iterate()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp; <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::iterate </td>
<td>(</td>
<td class="paramtype"><a class="el" href="#acc80c6c7de3e3020edeb51296050eb43">common_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>base</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Appends an opaque storage object to a runtime view. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">base</td><td>An opaque reference to a storage object. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This runtime view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00221">221</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="ae60420edc7a111866fd4164d060cc513" name="ae60420edc7a111866fd4164d060cc513"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae60420edc7a111866fd4164d060cc513">&#9670;&#160;</a></span>operator bool()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::operator bool </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks whether a view is initialized or not. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the view is initialized, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00275">275</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="abf9d409908a25e0eb7123a52f803c43b" name="abf9d409908a25e0eb7123a52f803c43b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf9d409908a25e0eb7123a52f803c43b">&#9670;&#160;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp; <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a>&lt; Type, Allocator &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel default">default</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default move assignment operator. </p>
<dl class="section return"><dt>Returns</dt><dd>This runtime view. </dd></dl>
</div>
</div>
<a id="a554579a85e4c40fd1506949c01706c27" name="a554579a85e4c40fd1506949c01706c27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a554579a85e4c40fd1506949c01706c27">&#9670;&#160;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a> &amp; <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a>&lt; Type, Allocator &gt; &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel default">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default copy assignment operator. </p>
<dl class="section return"><dt>Returns</dt><dd>This runtime view. </dd></dl>
</div>
</div>
<a id="acc18bd1f09d3df3e0373e8024601e2b2" name="acc18bd1f09d3df3e0373e8024601e2b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc18bd1f09d3df3e0373e8024601e2b2">&#9670;&#160;</a></span>size_hint()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#af1b166605a31e752ec85b4a5ddf29e64">size_type</a> <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::size_hint </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Estimates the number of entities iterated by the view. </p>
<dl class="section return"><dt>Returns</dt><dd>Estimated number of entities iterated by the view. </dd></dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00245">245</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<a id="adfcdaca31934517a51d1993f0a4f6cfd" name="adfcdaca31934517a51d1993f0a4f6cfd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfcdaca31934517a51d1993f0a4f6cfd">&#9670;&#160;</a></span>swap()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Type, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__runtime__view.html">entt::basic_runtime_view</a>&lt; Type, Allocator &gt;::swap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__runtime__view.html">basic_runtime_view</a>&lt; Type, Allocator &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Exchanges the contents with those of a given view. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>View to exchange the content with. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="runtime__view_8hpp_source.html#l00196">196</a> of file <a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/entity/<a class="el" href="entity_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/entity/<a class="el" href="runtime__view_8hpp_source.html">runtime_view.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+126
View File
@@ -0,0 +1,126 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="headertitle"><div class="title">entt::basic_scheduler&lt; Delta, Allocator &gt; Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#ab4995b2a91865c59e909057bfb010505">abort</a>(const bool immediate=false)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#afdde3b5231b2c45739f94b1a4206bce8">attach</a>(Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#abd7825b29cbc18edb14f5bd32c9b1d97">attach</a>(Func &amp;&amp;func)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a3c15133d781d3d2671ff64d4281d8d62">basic_scheduler</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a730077cba34cf06999080b542e940a2e">basic_scheduler</a>(const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a0bebce4f1b2c70862171a2a0785ef74c">basic_scheduler</a>(const basic_scheduler &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a4c3323d871e3654e61afb80a4f05a3da">basic_scheduler</a>(basic_scheduler &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#ab39ad210a5b331208057c7894510c2b0">basic_scheduler</a>(basic_scheduler &amp;&amp;other, const allocator_type &amp;allocator)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#ae92f6e2916a21e4225bb93cc747a90af">clear</a>()</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#aee11899e97bc57ebc9216a1f0f24e329">delta_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a0148252d629fa78ebfe688519013c9c4">empty</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#abc471579324ff48d2c55a520024449d3">get_allocator</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a466f28758a275cd736b5cbab7b6b1fbb">operator=</a>(const basic_scheduler &amp;)=delete</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a7cc74ea04a1e79e23cb8b007cf89b6d6">operator=</a>(basic_scheduler &amp;&amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a438e626f597bee890ab71d2d6d2c589f">size</a>() const noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a65ce482b6daa9eb3117075b7d4eaecc7">size_type</a> typedef</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#ac2d27cb8fda69dac03d011c66276daa7">swap</a>(basic_scheduler &amp;other) noexcept</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a97b6902501430cb4cce602d848d46b7e">then</a>(Args &amp;&amp;...args)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a4edd1d1540d7d2a5307a646c1c0d880b">then</a>(Func &amp;&amp;func)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#aac8d0d131f7e1214c4191048762ccd09">update</a>(const delta_type delta, void *data=nullptr)</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html#a7a5de33957c30564f3f7e42c15b7305f">~basic_scheduler</a>()=default</td><td class="entry"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler&lt; Delta, Allocator &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>
+963
View File
@@ -0,0 +1,963 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>EnTT: entt::basic_scheduler&lt; Delta, Allocator &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">EnTT<span id="projectnumber">&#160;3.15.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceentt.html">entt</a></li><li class="navelem"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a></li> </ul>
</div>
</div><!-- top -->
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classentt_1_1basic__scheduler-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">entt::basic_scheduler&lt; Delta, Allocator &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Cooperative scheduler for processes.
<a href="#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a232bb21739cbd8084ec723bcc17d44e9" id="r_a232bb21739cbd8084ec723bcc17d44e9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> = Allocator</td></tr>
<tr class="memdesc:a232bb21739cbd8084ec723bcc17d44e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator type. <br /></td></tr>
<tr class="separator:a232bb21739cbd8084ec723bcc17d44e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65ce482b6daa9eb3117075b7d4eaecc7" id="r_a65ce482b6daa9eb3117075b7d4eaecc7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a65ce482b6daa9eb3117075b7d4eaecc7">size_type</a> = std::size_t</td></tr>
<tr class="memdesc:a65ce482b6daa9eb3117075b7d4eaecc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:a65ce482b6daa9eb3117075b7d4eaecc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee11899e97bc57ebc9216a1f0f24e329" id="r_aee11899e97bc57ebc9216a1f0f24e329"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aee11899e97bc57ebc9216a1f0f24e329">delta_type</a> = Delta</td></tr>
<tr class="memdesc:aee11899e97bc57ebc9216a1f0f24e329"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unsigned integer type. <br /></td></tr>
<tr class="separator:aee11899e97bc57ebc9216a1f0f24e329"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a3c15133d781d3d2671ff64d4281d8d62" id="r_a3c15133d781d3d2671ff64d4281d8d62"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3c15133d781d3d2671ff64d4281d8d62">basic_scheduler</a> ()</td></tr>
<tr class="memdesc:a3c15133d781d3d2671ff64d4281d8d62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:a3c15133d781d3d2671ff64d4281d8d62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a730077cba34cf06999080b542e940a2e" id="r_a730077cba34cf06999080b542e940a2e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a730077cba34cf06999080b542e940a2e">basic_scheduler</a> (const <a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:a730077cba34cf06999080b542e940a2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a scheduler with a given allocator. <br /></td></tr>
<tr class="separator:a730077cba34cf06999080b542e940a2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bebce4f1b2c70862171a2a0785ef74c" id="r_a0bebce4f1b2c70862171a2a0785ef74c"><td class="memItemLeft" align="right" valign="top"><a id="a0bebce4f1b2c70862171a2a0785ef74c" name="a0bebce4f1b2c70862171a2a0785ef74c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>basic_scheduler</b> (const <a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;)=delete</td></tr>
<tr class="memdesc:a0bebce4f1b2c70862171a2a0785ef74c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy constructor, deleted on purpose. <br /></td></tr>
<tr class="separator:a0bebce4f1b2c70862171a2a0785ef74c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c3323d871e3654e61afb80a4f05a3da" id="r_a4c3323d871e3654e61afb80a4f05a3da"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4c3323d871e3654e61afb80a4f05a3da">basic_scheduler</a> (<a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&amp;other) noexcept</td></tr>
<tr class="memdesc:a4c3323d871e3654e61afb80a4f05a3da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move constructor. <br /></td></tr>
<tr class="separator:a4c3323d871e3654e61afb80a4f05a3da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab39ad210a5b331208057c7894510c2b0" id="r_ab39ad210a5b331208057c7894510c2b0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab39ad210a5b331208057c7894510c2b0">basic_scheduler</a> (<a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&amp;other, const <a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> &amp;allocator)</td></tr>
<tr class="memdesc:ab39ad210a5b331208057c7894510c2b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator-extended move constructor. <br /></td></tr>
<tr class="separator:ab39ad210a5b331208057c7894510c2b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a5de33957c30564f3f7e42c15b7305f" id="r_a7a5de33957c30564f3f7e42c15b7305f"><td class="memItemLeft" align="right" valign="top"><a id="a7a5de33957c30564f3f7e42c15b7305f" name="a7a5de33957c30564f3f7e42c15b7305f"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>~basic_scheduler</b> ()=default</td></tr>
<tr class="memdesc:a7a5de33957c30564f3f7e42c15b7305f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor. <br /></td></tr>
<tr class="separator:a7a5de33957c30564f3f7e42c15b7305f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a466f28758a275cd736b5cbab7b6b1fbb" id="r_a466f28758a275cd736b5cbab7b6b1fbb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a466f28758a275cd736b5cbab7b6b1fbb">operator=</a> (const <a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;)=delete</td></tr>
<tr class="memdesc:a466f28758a275cd736b5cbab7b6b1fbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default copy assignment operator, deleted on purpose. <br /></td></tr>
<tr class="separator:a466f28758a275cd736b5cbab7b6b1fbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cc74ea04a1e79e23cb8b007cf89b6d6" id="r_a7cc74ea04a1e79e23cb8b007cf89b6d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7cc74ea04a1e79e23cb8b007cf89b6d6">operator=</a> (<a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&amp;other) noexcept</td></tr>
<tr class="memdesc:a7cc74ea04a1e79e23cb8b007cf89b6d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move assignment operator. <br /></td></tr>
<tr class="separator:a7cc74ea04a1e79e23cb8b007cf89b6d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2d27cb8fda69dac03d011c66276daa7" id="r_ac2d27cb8fda69dac03d011c66276daa7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac2d27cb8fda69dac03d011c66276daa7">swap</a> (<a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;other) noexcept</td></tr>
<tr class="memdesc:ac2d27cb8fda69dac03d011c66276daa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchanges the contents with those of a given scheduler. <br /></td></tr>
<tr class="separator:ac2d27cb8fda69dac03d011c66276daa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc471579324ff48d2c55a520024449d3" id="r_abc471579324ff48d2c55a520024449d3"><td class="memItemLeft" align="right" valign="top">constexpr <a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abc471579324ff48d2c55a520024449d3">get_allocator</a> () const noexcept</td></tr>
<tr class="memdesc:abc471579324ff48d2c55a520024449d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the associated allocator. <br /></td></tr>
<tr class="separator:abc471579324ff48d2c55a520024449d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a438e626f597bee890ab71d2d6d2c589f" id="r_a438e626f597bee890ab71d2d6d2c589f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a65ce482b6daa9eb3117075b7d4eaecc7">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a438e626f597bee890ab71d2d6d2c589f">size</a> () const noexcept</td></tr>
<tr class="memdesc:a438e626f597bee890ab71d2d6d2c589f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of processes currently scheduled. <br /></td></tr>
<tr class="separator:a438e626f597bee890ab71d2d6d2c589f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0148252d629fa78ebfe688519013c9c4" id="r_a0148252d629fa78ebfe688519013c9c4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0148252d629fa78ebfe688519013c9c4">empty</a> () const noexcept</td></tr>
<tr class="memdesc:a0148252d629fa78ebfe688519013c9c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if at least a process is currently scheduled. <br /></td></tr>
<tr class="separator:a0148252d629fa78ebfe688519013c9c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae92f6e2916a21e4225bb93cc747a90af" id="r_ae92f6e2916a21e4225bb93cc747a90af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae92f6e2916a21e4225bb93cc747a90af">clear</a> ()</td></tr>
<tr class="memdesc:ae92f6e2916a21e4225bb93cc747a90af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Discards all scheduled processes. <br /></td></tr>
<tr class="separator:ae92f6e2916a21e4225bb93cc747a90af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdde3b5231b2c45739f94b1a4206bce8" id="r_afdde3b5231b2c45739f94b1a4206bce8"><td class="memTemplParams" colspan="2">template&lt;typename Proc, typename... Args&gt; </td></tr>
<tr class="memitem:afdde3b5231b2c45739f94b1a4206bce8"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#afdde3b5231b2c45739f94b1a4206bce8">attach</a> (Args &amp;&amp;...args)</td></tr>
<tr class="memdesc:afdde3b5231b2c45739f94b1a4206bce8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Schedules a process for the next tick. <br /></td></tr>
<tr class="separator:afdde3b5231b2c45739f94b1a4206bce8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd7825b29cbc18edb14f5bd32c9b1d97" id="r_abd7825b29cbc18edb14f5bd32c9b1d97"><td class="memTemplParams" colspan="2">template&lt;typename Func&gt; </td></tr>
<tr class="memitem:abd7825b29cbc18edb14f5bd32c9b1d97"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#abd7825b29cbc18edb14f5bd32c9b1d97">attach</a> (Func &amp;&amp;func)</td></tr>
<tr class="memdesc:abd7825b29cbc18edb14f5bd32c9b1d97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Schedules a process for the next tick. <br /></td></tr>
<tr class="separator:abd7825b29cbc18edb14f5bd32c9b1d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97b6902501430cb4cce602d848d46b7e" id="r_a97b6902501430cb4cce602d848d46b7e"><td class="memTemplParams" colspan="2">template&lt;typename Proc, typename... Args&gt; </td></tr>
<tr class="memitem:a97b6902501430cb4cce602d848d46b7e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a97b6902501430cb4cce602d848d46b7e">then</a> (Args &amp;&amp;...args)</td></tr>
<tr class="memdesc:a97b6902501430cb4cce602d848d46b7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a process as a continuation of the last scheduled process. <br /></td></tr>
<tr class="separator:a97b6902501430cb4cce602d848d46b7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4edd1d1540d7d2a5307a646c1c0d880b" id="r_a4edd1d1540d7d2a5307a646c1c0d880b"><td class="memTemplParams" colspan="2">template&lt;typename Func&gt; </td></tr>
<tr class="memitem:a4edd1d1540d7d2a5307a646c1c0d880b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a4edd1d1540d7d2a5307a646c1c0d880b">then</a> (Func &amp;&amp;func)</td></tr>
<tr class="memdesc:a4edd1d1540d7d2a5307a646c1c0d880b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a process as a continuation of the last scheduled process. <br /></td></tr>
<tr class="separator:a4edd1d1540d7d2a5307a646c1c0d880b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac8d0d131f7e1214c4191048762ccd09" id="r_aac8d0d131f7e1214c4191048762ccd09"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aac8d0d131f7e1214c4191048762ccd09">update</a> (const <a class="el" href="#aee11899e97bc57ebc9216a1f0f24e329">delta_type</a> delta, void *data=nullptr)</td></tr>
<tr class="memdesc:aac8d0d131f7e1214c4191048762ccd09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates all scheduled processes. <br /></td></tr>
<tr class="separator:aac8d0d131f7e1214c4191048762ccd09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4995b2a91865c59e909057bfb010505" id="r_ab4995b2a91865c59e909057bfb010505"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab4995b2a91865c59e909057bfb010505">abort</a> (const bool immediate=false)</td></tr>
<tr class="memdesc:ab4995b2a91865c59e909057bfb010505"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts all scheduled processes. <br /></td></tr>
<tr class="separator:ab4995b2a91865c59e909057bfb010505"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;typename Delta, typename Allocator&gt;<br />
class entt::basic_scheduler&lt; Delta, Allocator &gt;</div><p>Cooperative scheduler for processes. </p>
<p>A cooperative scheduler runs processes and helps managing their life cycles.</p>
<p>Each process is invoked once per tick. If a process terminates, it's removed automatically from the scheduler and it's never invoked again.<br />
A process can also have a child. In this case, the process is replaced with its child when it terminates if it returns with success. In case of errors, both the process and its child are discarded.</p>
<p>Example of use (pseudocode):</p>
<div class="fragment"><div class="line"><a class="code hl_typedef" href="namespaceentt.html#afb4634a5b738455e0b6d35bb5444dbf4">scheduler</a>.attach([](<span class="keyword">auto</span> delta, <span class="keywordtype">void</span> *, <span class="keyword">auto</span> succeed, <span class="keyword">auto</span> fail) {</div>
<div class="line"> <span class="comment">// code</span></div>
<div class="line">}).<a class="code hl_function" href="#a97b6902501430cb4cce602d848d46b7e">then&lt;my_process&gt;</a>(arguments...);</div>
<div class="ttc" id="aclassentt_1_1basic__scheduler_html_a97b6902501430cb4cce602d848d46b7e"><div class="ttname"><a href="#a97b6902501430cb4cce602d848d46b7e">entt::basic_scheduler::then</a></div><div class="ttdeci">basic_scheduler &amp; then(Args &amp;&amp;...args)</div><div class="ttdoc">Sets a process as a continuation of the last scheduled process.</div><div class="ttdef"><b>Definition</b> <a href="scheduler_8hpp_source.html#l00294">scheduler.hpp:294</a></div></div>
<div class="ttc" id="anamespaceentt_html_afb4634a5b738455e0b6d35bb5444dbf4"><div class="ttname"><a href="namespaceentt.html#afb4634a5b738455e0b6d35bb5444dbf4">entt::scheduler</a></div><div class="ttdeci">basic_scheduler&lt;&gt; scheduler</div><div class="ttdoc">Alias declaration for the most common use case.</div><div class="ttdef"><b>Definition</b> <a href="process_2fwd_8hpp_source.html#l00016">fwd.hpp:16</a></div></div>
</div><!-- fragment --><p>In order to invoke all scheduled processes, call the <code>update</code> member function passing it the elapsed time to forward to the tasks.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classentt_1_1process.html" title="Base class for processes.">process</a></dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Delta</td><td>Type to use to provide elapsed time. </td></tr>
<tr><td class="paramname">Allocator</td><td>Type of allocator used to manage memory and elements. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00082">82</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a232bb21739cbd8084ec723bcc17d44e9" name="a232bb21739cbd8084ec723bcc17d44e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a232bb21739cbd8084ec723bcc17d44e9">&#9670;&#160;</a></span>allocator_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::allocator_type = Allocator</td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator type. </p>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00095">95</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="aee11899e97bc57ebc9216a1f0f24e329" name="aee11899e97bc57ebc9216a1f0f24e329"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee11899e97bc57ebc9216a1f0f24e329">&#9670;&#160;</a></span>delta_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::delta_type = Delta</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00099">99</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a65ce482b6daa9eb3117075b7d4eaecc7" name="a65ce482b6daa9eb3117075b7d4eaecc7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65ce482b6daa9eb3117075b7d4eaecc7">&#9670;&#160;</a></span>size_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::size_type = std::size_t</td>
</tr>
</table>
</div><div class="memdoc">
<p>Unsigned integer type. </p>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00097">97</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a3c15133d781d3d2671ff64d4281d8d62" name="a3c15133d781d3d2671ff64d4281d8d62"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c15133d781d3d2671ff64d4281d8d62">&#9670;&#160;</a></span>basic_scheduler() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::basic_scheduler </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default constructor. </p>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00102">102</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a730077cba34cf06999080b542e940a2e" name="a730077cba34cf06999080b542e940a2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a730077cba34cf06999080b542e940a2e">&#9670;&#160;</a></span>basic_scheduler() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::basic_scheduler </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel explicit">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a scheduler with a given allocator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00109">109</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a4c3323d871e3654e61afb80a4f05a3da" name="a4c3323d871e3654e61afb80a4f05a3da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c3323d871e3654e61afb80a4f05a3da">&#9670;&#160;</a></span>basic_scheduler() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::basic_scheduler </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a>&lt; Delta, Allocator &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00119">119</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="ab39ad210a5b331208057c7894510c2b0" name="ab39ad210a5b331208057c7894510c2b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab39ad210a5b331208057c7894510c2b0">&#9670;&#160;</a></span>basic_scheduler() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::basic_scheduler </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a>&lt; Delta, Allocator &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> &amp;</td> <td class="paramname"><span class="paramname"><em>allocator</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator-extended move constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
<tr><td class="paramname">allocator</td><td>The allocator to use. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00127">127</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab4995b2a91865c59e909057bfb010505" name="ab4995b2a91865c59e909057bfb010505"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4995b2a91865c59e909057bfb010505">&#9670;&#160;</a></span>abort()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::abort </td>
<td>(</td>
<td class="paramtype">const bool</td> <td class="paramname"><span class="paramname"><em>immediate</em></span><span class="paramdefsep"> = </span><span class="paramdefval">false</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Aborts all scheduled processes. </p>
<p>Unless an immediate operation is requested, the abort is scheduled for the next tick. Processes won't be executed anymore in any case.<br />
Once a process is fully aborted and thus finished, it's discarded along with its child, if any.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">immediate</td><td>Requests an immediate operation. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00352">352</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="afdde3b5231b2c45739f94b1a4206bce8" name="afdde3b5231b2c45739f94b1a4206bce8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afdde3b5231b2c45739f94b1a4206bce8">&#9670;&#160;</a></span>attach() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<div class="memtemplate">
template&lt;typename Proc, typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp; <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::attach </td>
<td>(</td>
<td class="paramtype">Args &amp;&amp;...</td> <td class="paramname"><span class="paramname"><em>args</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Schedules a process for the next tick. </p>
<p>Returned value can be used to attach a continuation for the last process. The continutation is scheduled automatically when the process terminates and only if the process returns with success.</p>
<p>Example of use (pseudocode):</p>
<div class="fragment"><div class="line"><span class="comment">// schedules a task in the form of a process class</span></div>
<div class="line"><a class="code hl_typedef" href="namespaceentt.html#afb4634a5b738455e0b6d35bb5444dbf4">scheduler</a>.attach&lt;my_process&gt;(arguments...)</div>
<div class="line"><span class="comment">// appends a child in the form of a lambda function</span></div>
<div class="line">.then([](<span class="keyword">auto</span> delta, <span class="keywordtype">void</span> *, <span class="keyword">auto</span> succeed, <span class="keyword">auto</span> fail) {</div>
<div class="line"> <span class="comment">// code</span></div>
<div class="line">})</div>
<div class="line"><span class="comment">// appends a child in the form of another process class</span></div>
<div class="line">.<a class="code hl_function" href="#a97b6902501430cb4cce602d848d46b7e">then&lt;my_other_process&gt;</a>();</div>
</div><!-- fragment --><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Proc</td><td>Type of process to schedule. </td></tr>
<tr><td class="paramname">Args</td><td>Types of arguments to use to initialize the process. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Parameters to use to initialize the process. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This process scheduler. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00221">221</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="abd7825b29cbc18edb14f5bd32c9b1d97" name="abd7825b29cbc18edb14f5bd32c9b1d97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd7825b29cbc18edb14f5bd32c9b1d97">&#9670;&#160;</a></span>attach() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<div class="memtemplate">
template&lt;typename Func&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp; <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::attach </td>
<td>(</td>
<td class="paramtype">Func &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>func</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Schedules a process for the next tick. </p>
<p>A process can be either a lambda or a functor. The scheduler wraps both of them in a process adaptor internally.<br />
The signature of the function call operator should be equivalent to the following:</p>
<div class="fragment"><div class="line">void(Delta delta, <span class="keywordtype">void</span> *data, <span class="keyword">auto</span> succeed, <span class="keyword">auto</span> fail);</div>
</div><!-- fragment --><p>Where:</p>
<ul>
<li><code>delta</code> is the elapsed time.</li>
<li><code>data</code> is an opaque pointer to user data if any, <code>nullptr</code> otherwise.</li>
<li><code>succeed</code> is a function to call when a process terminates with success.</li>
<li><code>fail</code> is a function to call when a process terminates with errors.</li>
</ul>
<p>The signature of the function call operator of both <code>succeed</code> and <code>fail</code> is equivalent to the following:</p>
<div class="fragment"><div class="line">void();</div>
</div><!-- fragment --><p>Returned value can be used to attach a continuation for the last process. The continutation is scheduled automatically when the process terminates and only if the process returns with success.</p>
<p>Example of use (pseudocode):</p>
<div class="fragment"><div class="line"><span class="comment">// schedules a task in the form of a lambda function</span></div>
<div class="line"><a class="code hl_typedef" href="namespaceentt.html#afb4634a5b738455e0b6d35bb5444dbf4">scheduler</a>.attach([](<span class="keyword">auto</span> delta, <span class="keywordtype">void</span> *, <span class="keyword">auto</span> succeed, <span class="keyword">auto</span> fail) {</div>
<div class="line"> <span class="comment">// code</span></div>
<div class="line">})</div>
<div class="line"><span class="comment">// appends a child in the form of another lambda function</span></div>
<div class="line">.<a class="code hl_function" href="#a97b6902501430cb4cce602d848d46b7e">then</a>([](<span class="keyword">auto</span> delta, <span class="keywordtype">void</span> *, <span class="keyword">auto</span> succeed, <span class="keyword">auto</span> fail) {</div>
<div class="line"> <span class="comment">// code</span></div>
<div class="line">})</div>
<div class="line"><span class="comment">// appends a child in the form of a process class</span></div>
<div class="line">.<a class="code hl_function" href="#a97b6902501430cb4cce602d848d46b7e">then&lt;my_process&gt;</a>(arguments...);</div>
</div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><a class="el" href="structentt_1_1process__adaptor.html" title="Adaptor for lambdas and functors to turn them into processes.">process_adaptor</a></dd></dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Func</td><td>Type of process to schedule. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">func</td><td>Either a lambda or a functor to use as a process. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This process scheduler. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00281">281</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="ae92f6e2916a21e4225bb93cc747a90af" name="ae92f6e2916a21e4225bb93cc747a90af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae92f6e2916a21e4225bb93cc747a90af">&#9670;&#160;</a></span>clear()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::clear </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Discards all scheduled processes. </p>
<p>Processes aren't aborted. They are discarded along with their children and never executed again. </p>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00191">191</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a0148252d629fa78ebfe688519013c9c4" name="a0148252d629fa78ebfe688519013c9c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0148252d629fa78ebfe688519013c9c4">&#9670;&#160;</a></span>empty()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::empty </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if at least a process is currently scheduled. </p>
<dl class="section return"><dt>Returns</dt><dd>True if there are scheduled processes, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00181">181</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="abc471579324ff48d2c55a520024449d3" name="abc471579324ff48d2c55a520024449d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc471579324ff48d2c55a520024449d3">&#9670;&#160;</a></span>get_allocator()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a232bb21739cbd8084ec723bcc17d44e9">allocator_type</a> <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::get_allocator </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel constexpr">constexpr</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the associated allocator. </p>
<dl class="section return"><dt>Returns</dt><dd>The associated allocator. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00165">165</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a7cc74ea04a1e79e23cb8b007cf89b6d6" name="a7cc74ea04a1e79e23cb8b007cf89b6d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7cc74ea04a1e79e23cb8b007cf89b6d6">&#9670;&#160;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp; <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a>&lt; Delta, Allocator &gt; &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move assignment operator. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The instance to move from. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This process scheduler. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00146">146</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a466f28758a275cd736b5cbab7b6b1fbb" name="a466f28758a275cd736b5cbab7b6b1fbb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a466f28758a275cd736b5cbab7b6b1fbb">&#9670;&#160;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp; <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a>&lt; Delta, Allocator &gt; &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel delete">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Default copy assignment operator, deleted on purpose. </p>
<dl class="section return"><dt>Returns</dt><dd>This process scheduler. </dd></dl>
</div>
</div>
<a id="a438e626f597bee890ab71d2d6d2c589f" name="a438e626f597bee890ab71d2d6d2c589f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a438e626f597bee890ab71d2d6d2c589f">&#9670;&#160;</a></span>size()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="#a65ce482b6daa9eb3117075b7d4eaecc7">size_type</a> <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::size </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel nodiscard">nodiscard</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of processes currently scheduled. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of processes currently scheduled. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00173">173</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="ac2d27cb8fda69dac03d011c66276daa7" name="ac2d27cb8fda69dac03d011c66276daa7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2d27cb8fda69dac03d011c66276daa7">&#9670;&#160;</a></span>swap()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::swap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a>&lt; Delta, Allocator &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Exchanges the contents with those of a given scheduler. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>Scheduler to exchange the content with. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00156">156</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a97b6902501430cb4cce602d848d46b7e" name="a97b6902501430cb4cce602d848d46b7e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97b6902501430cb4cce602d848d46b7e">&#9670;&#160;</a></span>then() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<div class="memtemplate">
template&lt;typename Proc, typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp; <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::then </td>
<td>(</td>
<td class="paramtype">Args &amp;&amp;...</td> <td class="paramname"><span class="paramname"><em>args</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets a process as a continuation of the last scheduled process. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Proc</td><td>Type of process to use as a continuation. </td></tr>
<tr><td class="paramname">Args</td><td>Types of arguments to use to initialize the process. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Parameters to use to initialize the process. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This process scheduler. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00294">294</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="a4edd1d1540d7d2a5307a646c1c0d880b" name="a4edd1d1540d7d2a5307a646c1c0d880b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4edd1d1540d7d2a5307a646c1c0d880b">&#9670;&#160;</a></span>then() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<div class="memtemplate">
template&lt;typename Func&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classentt_1_1basic__scheduler.html">basic_scheduler</a> &amp; <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::then </td>
<td>(</td>
<td class="paramtype">Func &amp;&amp;</td> <td class="paramname"><span class="paramname"><em>func</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets a process as a continuation of the last scheduled process. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">Func</td><td>Type of process to use as a continuation. </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">func</td><td>Either a lambda or a functor to use as a process. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This process scheduler. </dd></dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00310">310</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<a id="aac8d0d131f7e1214c4191048762ccd09" name="aac8d0d131f7e1214c4191048762ccd09"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac8d0d131f7e1214c4191048762ccd09">&#9670;&#160;</a></span>update()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Delta, typename Allocator&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classentt_1_1basic__scheduler.html">entt::basic_scheduler</a>&lt; Delta, Allocator &gt;::update </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="#aee11899e97bc57ebc9216a1f0f24e329">delta_type</a></td> <td class="paramname"><span class="paramname"><em>delta</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>data</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Updates all scheduled processes. </p>
<p>All scheduled processes are executed in no specific order.<br />
If a process terminates with success, it's replaced with its child, if any. Otherwise, if a process terminates with an error, it's removed along with its child.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">delta</td><td>Elapsed time. </td></tr>
<tr><td class="paramname">data</td><td>Optional data. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="scheduler_8hpp_source.html#l00326">326</a> of file <a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/entt/process/<a class="el" href="process_2fwd_8hpp_source.html">fwd.hpp</a></li>
<li>src/entt/process/<a class="el" href="scheduler_8hpp_source.html">scheduler.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
</small></address>
</div><!-- doc-content -->
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More