/src/hermes/external/llvh/include/llvh/ADT/Optional.h
Line | Count | Source |
1 | | //===- Optional.h - Simple variant for passing optional values --*- C++ -*-===// |
2 | | // |
3 | | // The LLVM Compiler Infrastructure |
4 | | // |
5 | | // This file is distributed under the University of Illinois Open Source |
6 | | // License. See LICENSE.TXT for details. |
7 | | // |
8 | | //===----------------------------------------------------------------------===// |
9 | | // |
10 | | // This file provides Optional, a template class modeled in the spirit of |
11 | | // OCaml's 'opt' variant. The idea is to strongly type whether or not |
12 | | // a value can be optional. |
13 | | // |
14 | | //===----------------------------------------------------------------------===// |
15 | | |
16 | | #ifndef LLVM_ADT_OPTIONAL_H |
17 | | #define LLVM_ADT_OPTIONAL_H |
18 | | |
19 | | #include "llvh/ADT/None.h" |
20 | | #include "llvh/Support/AlignOf.h" |
21 | | #include "llvh/Support/Compiler.h" |
22 | | #include "llvh/Support/type_traits.h" |
23 | | #include <algorithm> |
24 | | #include <cassert> |
25 | | #include <new> |
26 | | #include <utility> |
27 | | |
28 | | namespace llvh { |
29 | | |
30 | | namespace optional_detail { |
31 | | /// Storage for any type. |
32 | | template <typename T, bool IsPodLike> struct OptionalStorage { |
33 | | AlignedCharArrayUnion<T> storage; |
34 | | bool hasVal = false; |
35 | | |
36 | 222k | OptionalStorage() = default; Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>, false>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::Callable>, false>::OptionalStorage() Line | Count | Source | 36 | 2 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HermesValue>, false>::OptionalStorage() Line | Count | Source | 36 | 222k | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSError>, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::StringBuilder, false>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSArray>, false>::OptionalStorage() Line | Count | Source | 36 | 27 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::IteratorRecord, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HiddenClass>, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Debugger::BreakpointLocation const, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::ScopeRegAndDescriptorChain, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocation, false>::OptionalStorage() llvh::optional_detail::OptionalStorage<std::__1::thread, false>::OptionalStorage() Line | Count | Source | 36 | 226 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallPtrSet<hermes::BasicBlock*, 4u>, false>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::irgen::FunctionContext, false>::OptionalStorage() Line | Count | Source | 36 | 147 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::irgen::SurroundingTry, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::CompiledRegExp, false>::OptionalStorage() Line | Count | Source | 36 | 2 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::APInt, false>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::OptionalStorage() |
37 | | |
38 | 0 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
39 | 0 | OptionalStorage(const OptionalStorage &O) : hasVal(O.hasVal) { |
40 | 0 | if (hasVal) |
41 | 0 | new (storage.buffer) T(*O.getPointer()); |
42 | 0 | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::OptionalStorage(llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false> const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::OptionalStorage(llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false> const&) |
43 | 974k | OptionalStorage(T &&y) : hasVal(true) { |
44 | 974k | new (storage.buffer) T(std::forward<T>(y)); |
45 | 974k | } llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>, false>::OptionalStorage(std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>&&) Line | Count | Source | 43 | 846k | OptionalStorage(T &&y) : hasVal(true) { | 44 | 846k | new (storage.buffer) T(std::forward<T>(y)); | 45 | 846k | } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSError>, false>::OptionalStorage(hermes::vm::Handle<hermes::vm::JSError>&&) Line | Count | Source | 43 | 41 | OptionalStorage(T &&y) : hasVal(true) { | 44 | 41 | new (storage.buffer) T(std::forward<T>(y)); | 45 | 41 | } |
llvh::optional_detail::OptionalStorage<hermes::vm::StringBuilder, false>::OptionalStorage(hermes::vm::StringBuilder&&) Line | Count | Source | 43 | 124k | OptionalStorage(T &&y) : hasVal(true) { | 44 | 124k | new (storage.buffer) T(std::forward<T>(y)); | 45 | 124k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::OptionalStorage(llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>&&) llvh::optional_detail::OptionalStorage<hermes::vm::IteratorRecord, false>::OptionalStorage(hermes::vm::IteratorRecord&&) Line | Count | Source | 43 | 2 | OptionalStorage(T &&y) : hasVal(true) { | 44 | 2 | new (storage.buffer) T(std::forward<T>(y)); | 45 | 2 | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HiddenClass>, false>::OptionalStorage(hermes::vm::Handle<hermes::vm::HiddenClass>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::Callable>, false>::OptionalStorage(hermes::vm::Handle<hermes::vm::Callable>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::ScopeRegAndDescriptorChain, false>::OptionalStorage(hermes::vm::ScopeRegAndDescriptorChain&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocation, false>::OptionalStorage(hermes::SourceMapTextLocation&&) llvh::optional_detail::OptionalStorage<llvh::SmallPtrSet<hermes::BasicBlock*, 4u>, false>::OptionalStorage(llvh::SmallPtrSet<hermes::BasicBlock*, 4u>&&) Line | Count | Source | 43 | 1.65k | OptionalStorage(T &&y) : hasVal(true) { | 44 | 1.65k | new (storage.buffer) T(std::forward<T>(y)); | 45 | 1.65k | } |
llvh::optional_detail::OptionalStorage<hermes::CompiledRegExp, false>::OptionalStorage(hermes::CompiledRegExp&&) Line | Count | Source | 43 | 1.82k | OptionalStorage(T &&y) : hasVal(true) { | 44 | 1.82k | new (storage.buffer) T(std::forward<T>(y)); | 45 | 1.82k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::APInt, false>::OptionalStorage(llvh::APInt&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::OptionalStorage(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&) |
46 | 0 | OptionalStorage(OptionalStorage &&O) : hasVal(O.hasVal) { |
47 | 0 | if (O.hasVal) { |
48 | 0 | new (storage.buffer) T(std::move(*O.getPointer())); |
49 | 0 | } |
50 | 0 | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::OptionalStorage(llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::OptionalStorage(llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::OptionalStorage(llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>&&) |
51 | | |
52 | 0 | OptionalStorage &operator=(T &&y) { |
53 | 0 | if (hasVal) |
54 | 0 | *getPointer() = std::move(y); |
55 | 0 | else { |
56 | 0 | new (storage.buffer) T(std::move(y)); |
57 | 0 | hasVal = true; |
58 | 0 | } |
59 | 0 | return *this; |
60 | 0 | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSArray>, false>::operator=(hermes::vm::Handle<hermes::vm::JSArray>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::operator=(llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::operator=(facebook::hermes::debugger::SourceLocation&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::thread, false>::operator=(std::__1::thread&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::operator=(hermes::parser::JSONSharedValue&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::operator=(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&) |
61 | 0 | OptionalStorage &operator=(OptionalStorage &&O) { |
62 | 0 | if (!O.hasVal) |
63 | 0 | reset(); |
64 | 0 | else { |
65 | 0 | *this = std::move(*O.getPointer()); |
66 | 0 | } |
67 | 0 | return *this; |
68 | 0 | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::operator=(llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>&&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::operator=(llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>&&) |
69 | | |
70 | | // FIXME: these assignments (& the equivalent const T&/const Optional& ctors) |
71 | | // could be made more efficient by passing by value, possibly unifying them |
72 | | // with the rvalue versions above - but this could place a different set of |
73 | | // requirements (notably: the existence of a default ctor) when implemented |
74 | | // in that way. Careful SFINAE to avoid such pitfalls would be required. |
75 | 0 | OptionalStorage &operator=(const T &y) { |
76 | 0 | if (hasVal) |
77 | 0 | *getPointer() = y; |
78 | 0 | else { |
79 | 0 | new (storage.buffer) T(y); |
80 | 0 | hasVal = true; |
81 | 0 | } |
82 | 0 | return *this; |
83 | 0 | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::operator=(facebook::hermes::debugger::SourceLocation const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::operator=(hermes::parser::JSONSharedValue const&) |
84 | | OptionalStorage &operator=(const OptionalStorage &O) { |
85 | | if (!O.hasVal) |
86 | | reset(); |
87 | | else |
88 | | *this = *O.getPointer(); |
89 | | return *this; |
90 | | } |
91 | | |
92 | 1.19M | ~OptionalStorage() { reset(); }llvh::optional_detail::OptionalStorage<std::__1::thread, false>::~OptionalStorage() Line | Count | Source | 92 | 226 | ~OptionalStorage() { reset(); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::~OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HiddenClass>, false>::~OptionalStorage() llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>, false>::~OptionalStorage() Line | Count | Source | 92 | 846k | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::Callable>, false>::~OptionalStorage() Line | Count | Source | 92 | 2 | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::vm::IteratorRecord, false>::~OptionalStorage() Line | Count | Source | 92 | 2 | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HermesValue>, false>::~OptionalStorage() Line | Count | Source | 92 | 222k | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSError>, false>::~OptionalStorage() Line | Count | Source | 92 | 41 | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::vm::StringBuilder, false>::~OptionalStorage() Line | Count | Source | 92 | 124k | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSArray>, false>::~OptionalStorage() Line | Count | Source | 92 | 27 | ~OptionalStorage() { reset(); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::~OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::~OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Debugger::BreakpointLocation const, false>::~OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::ScopeRegAndDescriptorChain, false>::~OptionalStorage() llvh::optional_detail::OptionalStorage<llvh::SmallPtrSet<hermes::BasicBlock*, 4u>, false>::~OptionalStorage() Line | Count | Source | 92 | 1.65k | ~OptionalStorage() { reset(); } |
llvh::optional_detail::OptionalStorage<hermes::irgen::FunctionContext, false>::~OptionalStorage() Line | Count | Source | 92 | 147 | ~OptionalStorage() { reset(); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::irgen::SurroundingTry, false>::~OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocation, false>::~OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::CompiledRegExp, false>::~OptionalStorage() Line | Count | Source | 92 | 1.82k | ~OptionalStorage() { reset(); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::~OptionalStorage() |
93 | | |
94 | 1.19M | void reset() { |
95 | 1.19M | if (hasVal) { |
96 | 974k | (*getPointer()).~T(); |
97 | 974k | hasVal = false; |
98 | 974k | } |
99 | 1.19M | } llvh::optional_detail::OptionalStorage<std::__1::thread, false>::reset() Line | Count | Source | 94 | 226 | void reset() { | 95 | 226 | if (hasVal) { | 96 | 0 | (*getPointer()).~T(); | 97 | 0 | hasVal = false; | 98 | 0 | } | 99 | 226 | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::reset() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::reset() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Debugger::BreakpointLocation const, false>::reset() llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::Callable>, false>::reset() Line | Count | Source | 94 | 2 | void reset() { | 95 | 2 | if (hasVal) { | 96 | 0 | (*getPointer()).~T(); | 97 | 0 | hasVal = false; | 98 | 0 | } | 99 | 2 | } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HermesValue>, false>::reset() Line | Count | Source | 94 | 222k | void reset() { | 95 | 222k | if (hasVal) { | 96 | 0 | (*getPointer()).~T(); | 97 | 0 | hasVal = false; | 98 | 0 | } | 99 | 222k | } |
llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>, false>::reset() Line | Count | Source | 94 | 846k | void reset() { | 95 | 846k | if (hasVal) { | 96 | 846k | (*getPointer()).~T(); | 97 | 846k | hasVal = false; | 98 | 846k | } | 99 | 846k | } |
llvh::optional_detail::OptionalStorage<hermes::vm::StringBuilder, false>::reset() Line | Count | Source | 94 | 124k | void reset() { | 95 | 124k | if (hasVal) { | 96 | 124k | (*getPointer()).~T(); | 97 | 124k | hasVal = false; | 98 | 124k | } | 99 | 124k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HiddenClass>, false>::reset() llvh::optional_detail::OptionalStorage<hermes::vm::IteratorRecord, false>::reset() Line | Count | Source | 94 | 2 | void reset() { | 95 | 2 | if (hasVal) { | 96 | 2 | (*getPointer()).~T(); | 97 | 2 | hasVal = false; | 98 | 2 | } | 99 | 2 | } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSError>, false>::reset() Line | Count | Source | 94 | 41 | void reset() { | 95 | 41 | if (hasVal) { | 96 | 41 | (*getPointer()).~T(); | 97 | 41 | hasVal = false; | 98 | 41 | } | 99 | 41 | } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSArray>, false>::reset() Line | Count | Source | 94 | 27 | void reset() { | 95 | 27 | if (hasVal) { | 96 | 0 | (*getPointer()).~T(); | 97 | 0 | hasVal = false; | 98 | 0 | } | 99 | 27 | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::reset() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::ScopeRegAndDescriptorChain, false>::reset() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocation, false>::reset() llvh::optional_detail::OptionalStorage<llvh::SmallPtrSet<hermes::BasicBlock*, 4u>, false>::reset() Line | Count | Source | 94 | 1.65k | void reset() { | 95 | 1.65k | if (hasVal) { | 96 | 1.65k | (*getPointer()).~T(); | 97 | 1.65k | hasVal = false; | 98 | 1.65k | } | 99 | 1.65k | } |
llvh::optional_detail::OptionalStorage<hermes::irgen::FunctionContext, false>::reset() Line | Count | Source | 94 | 147 | void reset() { | 95 | 147 | if (hasVal) { | 96 | 0 | (*getPointer()).~T(); | 97 | 0 | hasVal = false; | 98 | 0 | } | 99 | 147 | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::irgen::SurroundingTry, false>::reset() llvh::optional_detail::OptionalStorage<hermes::CompiledRegExp, false>::reset() Line | Count | Source | 94 | 1.82k | void reset() { | 95 | 1.82k | if (hasVal) { | 96 | 1.82k | (*getPointer()).~T(); | 97 | 1.82k | hasVal = false; | 98 | 1.82k | } | 99 | 1.82k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::APInt, false>::reset() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::reset() |
100 | | |
101 | 974k | T *getPointer() { |
102 | 974k | assert(hasVal); |
103 | 974k | return reinterpret_cast<T *>(storage.buffer); |
104 | 974k | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::thread, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Debugger::BreakpointLocation const, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::Callable>, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HermesValue>, false>::getPointer() llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>, false>::getPointer() Line | Count | Source | 101 | 846k | T *getPointer() { | 102 | 846k | assert(hasVal); | 103 | 846k | return reinterpret_cast<T *>(storage.buffer); | 104 | 846k | } |
llvh::optional_detail::OptionalStorage<hermes::vm::StringBuilder, false>::getPointer() Line | Count | Source | 101 | 124k | T *getPointer() { | 102 | 124k | assert(hasVal); | 103 | 124k | return reinterpret_cast<T *>(storage.buffer); | 104 | 124k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::HiddenClass>, false>::getPointer() llvh::optional_detail::OptionalStorage<hermes::vm::IteratorRecord, false>::getPointer() Line | Count | Source | 101 | 2 | T *getPointer() { | 102 | 2 | assert(hasVal); | 103 | 2 | return reinterpret_cast<T *>(storage.buffer); | 104 | 2 | } |
llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSError>, false>::getPointer() Line | Count | Source | 101 | 41 | T *getPointer() { | 102 | 41 | assert(hasVal); | 103 | 41 | return reinterpret_cast<T *>(storage.buffer); | 104 | 41 | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Handle<hermes::vm::JSArray>, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::ScopeRegAndDescriptorChain, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocation, false>::getPointer() llvh::optional_detail::OptionalStorage<llvh::SmallPtrSet<hermes::BasicBlock*, 4u>, false>::getPointer() Line | Count | Source | 101 | 1.65k | T *getPointer() { | 102 | 1.65k | assert(hasVal); | 103 | 1.65k | return reinterpret_cast<T *>(storage.buffer); | 104 | 1.65k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::irgen::FunctionContext, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::irgen::SurroundingTry, false>::getPointer() llvh::optional_detail::OptionalStorage<hermes::CompiledRegExp, false>::getPointer() Line | Count | Source | 101 | 1.82k | T *getPointer() { | 102 | 1.82k | assert(hasVal); | 103 | 1.82k | return reinterpret_cast<T *>(storage.buffer); | 104 | 1.82k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::APInt, false>::getPointer() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::getPointer() |
105 | 0 | const T *getPointer() const { |
106 | 0 | assert(hasVal); |
107 | 0 | return reinterpret_cast<const T *>(storage.buffer); |
108 | 0 | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONSharedValue, false>::getPointer() const Unexecuted instantiation: llvh::optional_detail::OptionalStorage<facebook::hermes::debugger::SourceLocation, false>::getPointer() const |
109 | | }; |
110 | | |
111 | | #if !defined(__GNUC__) || defined(__clang__) // GCC up to GCC7 miscompiles this. |
112 | | /// Storage for trivially copyable types only. |
113 | | template <typename T> struct OptionalStorage<T, true> { |
114 | | AlignedCharArrayUnion<T> storage; |
115 | | bool hasVal = false; |
116 | | |
117 | 9.59M | OptionalStorage() = default; llvh::optional_detail::OptionalStorage<bool, true>::OptionalStorage() Line | Count | Source | 117 | 258 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<unsigned int, true>::OptionalStorage() Line | Count | Source | 117 | 1.40M | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::CompressedPointer, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::NamedPropertyDescriptor, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::SymbolID, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags>, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::regex::SyntaxFlags, true>::OptionalStorage() Line | Count | Source | 117 | 1 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Runtime::StackFrameInfo, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::InterpreterState, unsigned int>, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::InterpreterState, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool>, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject>, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::SamplingProfiler::StackFrame, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<unsigned char, true>::OptionalStorage() Line | Count | Source | 117 | 19.7k | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<int, true>::OptionalStorage() Line | Count | Source | 117 | 7.86k | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMap::Segment::SourceLocation, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::irgen::LReference, true>::OptionalStorage() Line | Count | Source | 117 | 819 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<llvh::StringRef, true>::OptionalStorage() Line | Count | Source | 117 | 46.2k | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::BinaryOperatorInst::OpKind, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMap::Segment, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<unsigned long, true>::OptionalStorage() Line | Count | Source | 117 | 14 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocationFIndex, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONValue*, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::ESTree::ProgramNode*, true>::OptionalStorage() Line | Count | Source | 117 | 66 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionDeclarationNode*, true>::OptionalStorage() Line | Count | Source | 117 | 11 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionLikeNode*, true>::OptionalStorage() Line | Count | Source | 117 | 14 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::ESTree::Node*, true>::OptionalStorage() Line | Count | Source | 117 | 3.42M | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::ESTree::BlockStatementNode*, true>::OptionalStorage() Line | Count | Source | 117 | 54 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::ESTree::IdentifierNode*, true>::OptionalStorage() Line | Count | Source | 117 | 163 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::VariableDeclarationNode*, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<char const*, true>::OptionalStorage() Line | Count | Source | 117 | 442 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::VariableDeclaratorNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ArrayPatternNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::AssignmentPatternNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ObjectPatternNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::PropertyNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::IfStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::WhileStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::DoWhileStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ContinueStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::BreakStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ReturnStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::WithStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::SwitchStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ThrowStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::TryStatementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::DebuggerStatementNode*, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::ESTree::ArrayExpressionNode*, true>::OptionalStorage() Line | Count | Source | 117 | 2 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ObjectExpressionNode*, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionExpressionNode*, true>::OptionalStorage() Line | Count | Source | 117 | 3 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SMLoc, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::YieldExpressionNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassDeclarationNode*, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassExpressionNode*, true>::OptionalStorage() Line | Count | Source | 117 | 2 | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassBodyNode*, true>::OptionalStorage() Line | Count | Source | 117 | 2 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::StringLiteralNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ImportDeclarationNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::UniqueString*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ImportSpecifierNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::MatchBindingPatternNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionTypeAnnotationNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionTypeParamNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::GenericTypeAnnotationNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassImplementsNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::JSXOpeningElementNode*, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::TSTypeReferenceNode*, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::parser::TokenKind, true>::OptionalStorage() Line | Count | Source | 117 | 4.68M | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<char16_t, true>::OptionalStorage() Line | Count | Source | 117 | 463 | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom, true>::OptionalStorage() llvh::optional_detail::OptionalStorage<hermes::regex::CharacterClassCodepointRanges, true>::OptionalStorage() Line | Count | Source | 117 | 2.65k | OptionalStorage() = default; |
llvh::optional_detail::OptionalStorage<hermes::regex::CharacterClass, true>::OptionalStorage() Line | Count | Source | 117 | 2.22k | OptionalStorage() = default; |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceErrorManager::LineCoord, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::ArrayRef<llvh::StringRef>, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::SubArchType, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::VendorType, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::OSType, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::ObjectFormatType, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::ArchType, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::EnvironmentType, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::AArch64::ArchKind, true>::OptionalStorage() Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::ARM::ISAKind, true>::OptionalStorage() |
118 | | |
119 | 45.6M | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); }llvh::optional_detail::OptionalStorage<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive, true>::OptionalStorage(hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive const&) Line | Count | Source | 119 | 636k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::CompressedPointer, true>::OptionalStorage(hermes::vm::CompressedPointer const&) llvh::optional_detail::OptionalStorage<unsigned int, true>::OptionalStorage(unsigned int const&) Line | Count | Source | 119 | 54.4k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::NamedPropertyDescriptor, true>::OptionalStorage(hermes::vm::NamedPropertyDescriptor const&) llvh::optional_detail::OptionalStorage<hermes::vm::SymbolID, true>::OptionalStorage(hermes::vm::SymbolID const&) Line | Count | Source | 119 | 444k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags>, true>::OptionalStorage(std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags> const&) Line | Count | Source | 119 | 931 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::regex::SyntaxFlags, true>::OptionalStorage(hermes::regex::SyntaxFlags const&) Line | Count | Source | 119 | 1.82k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::inst::Inst const*, true>::OptionalStorage(hermes::inst::Inst const* const&) Line | Count | Source | 119 | 113 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::Runtime::StackFrameInfo, true>::OptionalStorage(hermes::vm::Runtime::StackFrameInfo const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::InterpreterState, unsigned int>, true>::OptionalStorage(std::__1::pair<hermes::vm::InterpreterState, unsigned int> const&) llvh::optional_detail::OptionalStorage<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool>, true>::OptionalStorage(std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool> const&) Line | Count | Source | 119 | 544k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::SamplingProfiler::StackFrame, true>::OptionalStorage(hermes::vm::SamplingProfiler::StackFrame const&) llvh::optional_detail::OptionalStorage<int, true>::OptionalStorage(int const&) Line | Count | Source | 119 | 357k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<unsigned char, true>::OptionalStorage(unsigned char const&) Line | Count | Source | 119 | 200k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::StringRef, true>::OptionalStorage(llvh::StringRef const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::BinaryOperatorInst::OpKind, true>::OptionalStorage(hermes::BinaryOperatorInst::OpKind const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<unsigned long, true>::OptionalStorage(unsigned long const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMap::Segment, true>::OptionalStorage(hermes::SourceMap::Segment const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMapTextLocationFIndex, true>::OptionalStorage(hermes::SourceMapTextLocationFIndex const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::parser::JSONValue*, true>::OptionalStorage(hermes::parser::JSONValue* const&) llvh::optional_detail::OptionalStorage<hermes::ESTree::ProgramNode*, true>::OptionalStorage(hermes::ESTree::ProgramNode* const&) Line | Count | Source | 119 | 860 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<bool, true>::OptionalStorage(bool const&) Line | Count | Source | 119 | 4.49k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionDeclarationNode*, true>::OptionalStorage(hermes::ESTree::FunctionDeclarationNode* const&) Line | Count | Source | 119 | 3.89k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SMLoc, true>::OptionalStorage(llvh::SMLoc const&) llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionLikeNode*, true>::OptionalStorage(hermes::ESTree::FunctionLikeNode* const&) Line | Count | Source | 119 | 4.05k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::Node*, true>::OptionalStorage(hermes::ESTree::Node* const&) Line | Count | Source | 119 | 42.8M | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::BlockStatementNode*, true>::OptionalStorage(hermes::ESTree::BlockStatementNode* const&) Line | Count | Source | 119 | 4.13k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::IdentifierNode*, true>::OptionalStorage(hermes::ESTree::IdentifierNode* const&) Line | Count | Source | 119 | 7.61k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::VariableDeclarationNode*, true>::OptionalStorage(hermes::ESTree::VariableDeclarationNode* const&) Line | Count | Source | 119 | 3.65k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::PrivateNameNode*, true>::OptionalStorage(hermes::ESTree::PrivateNameNode* const&) llvh::optional_detail::OptionalStorage<char const*, true>::OptionalStorage(char const* const&) Line | Count | Source | 119 | 6.75k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::VariableDeclaratorNode*, true>::OptionalStorage(hermes::ESTree::VariableDeclaratorNode* const&) Line | Count | Source | 119 | 3.65k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::ArrayPatternNode*, true>::OptionalStorage(hermes::ESTree::ArrayPatternNode* const&) Line | Count | Source | 119 | 236 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::AssignmentPatternNode*, true>::OptionalStorage(hermes::ESTree::AssignmentPatternNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ObjectPatternNode*, true>::OptionalStorage(hermes::ESTree::ObjectPatternNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::PropertyNode*, true>::OptionalStorage(hermes::ESTree::PropertyNode* const&) llvh::optional_detail::OptionalStorage<hermes::ESTree::EmptyStatementNode*, true>::OptionalStorage(hermes::ESTree::EmptyStatementNode* const&) Line | Count | Source | 119 | 453k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::IfStatementNode*, true>::OptionalStorage(hermes::ESTree::IfStatementNode* const&) Line | Count | Source | 119 | 1 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::WhileStatementNode*, true>::OptionalStorage(hermes::ESTree::WhileStatementNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::DoWhileStatementNode*, true>::OptionalStorage(hermes::ESTree::DoWhileStatementNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ContinueStatementNode*, true>::OptionalStorage(hermes::ESTree::ContinueStatementNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::BreakStatementNode*, true>::OptionalStorage(hermes::ESTree::BreakStatementNode* const&) llvh::optional_detail::OptionalStorage<hermes::ESTree::ReturnStatementNode*, true>::OptionalStorage(hermes::ESTree::ReturnStatementNode* const&) Line | Count | Source | 119 | 2 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::WithStatementNode*, true>::OptionalStorage(hermes::ESTree::WithStatementNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::SwitchStatementNode*, true>::OptionalStorage(hermes::ESTree::SwitchStatementNode* const&) llvh::optional_detail::OptionalStorage<hermes::ESTree::ThrowStatementNode*, true>::OptionalStorage(hermes::ESTree::ThrowStatementNode* const&) Line | Count | Source | 119 | 6 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::TryStatementNode*, true>::OptionalStorage(hermes::ESTree::TryStatementNode* const&) Line | Count | Source | 119 | 1 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::DebuggerStatementNode*, true>::OptionalStorage(hermes::ESTree::DebuggerStatementNode* const&) Line | Count | Source | 119 | 80 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::ArrayExpressionNode*, true>::OptionalStorage(hermes::ESTree::ArrayExpressionNode* const&) Line | Count | Source | 119 | 1.71k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::ObjectExpressionNode*, true>::OptionalStorage(hermes::ESTree::ObjectExpressionNode* const&) Line | Count | Source | 119 | 2 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionExpressionNode*, true>::OptionalStorage(hermes::ESTree::FunctionExpressionNode* const&) Line | Count | Source | 119 | 161 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::YieldExpressionNode*, true>::OptionalStorage(hermes::ESTree::YieldExpressionNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassDeclarationNode*, true>::OptionalStorage(hermes::ESTree::ClassDeclarationNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassExpressionNode*, true>::OptionalStorage(hermes::ESTree::ClassExpressionNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassBodyNode*, true>::OptionalStorage(hermes::ESTree::ClassBodyNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::StringLiteralNode*, true>::OptionalStorage(hermes::ESTree::StringLiteralNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ImportDeclarationNode*, true>::OptionalStorage(hermes::ESTree::ImportDeclarationNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::UniqueString*, true>::OptionalStorage(hermes::UniqueString* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ImportSpecifierNode*, true>::OptionalStorage(hermes::ESTree::ImportSpecifierNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::MatchBindingPatternNode*, true>::OptionalStorage(hermes::ESTree::MatchBindingPatternNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionTypeAnnotationNode*, true>::OptionalStorage(hermes::ESTree::FunctionTypeAnnotationNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::FunctionTypeParamNode*, true>::OptionalStorage(hermes::ESTree::FunctionTypeParamNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::GenericTypeAnnotationNode*, true>::OptionalStorage(hermes::ESTree::GenericTypeAnnotationNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::ClassImplementsNode*, true>::OptionalStorage(hermes::ESTree::ClassImplementsNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::JSXOpeningElementNode*, true>::OptionalStorage(hermes::ESTree::JSXOpeningElementNode* const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::ESTree::TSTypeReferenceNode*, true>::OptionalStorage(hermes::ESTree::TSTypeReferenceNode* const&) llvh::optional_detail::OptionalStorage<char16_t, true>::OptionalStorage(char16_t const&) Line | Count | Source | 119 | 12.4k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::regex::CharacterClass, true>::OptionalStorage(hermes::regex::CharacterClass const&) Line | Count | Source | 119 | 432 | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
llvh::optional_detail::OptionalStorage<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom, true>::OptionalStorage(hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom const&) Line | Count | Source | 119 | 2.65k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::regex::CharacterClassCodepointRanges, true>::OptionalStorage(hermes::regex::CharacterClassCodepointRanges const&) llvh::optional_detail::OptionalStorage<hermes::SourceErrorManager::LineCoord, true>::OptionalStorage(hermes::SourceErrorManager::LineCoord const&) Line | Count | Source | 119 | 16.1k | OptionalStorage(const T &y) : hasVal(true) { new (storage.buffer) T(y); } |
|
120 | 7.78M | OptionalStorage &operator=(const T &y) { |
121 | 7.78M | *reinterpret_cast<T *>(storage.buffer) = y; |
122 | 7.78M | hasVal = true; |
123 | 7.78M | return *this; |
124 | 7.78M | } Unexecuted instantiation: llvh::optional_detail::OptionalStorage<unsigned long, true>::operator=(unsigned long const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<char const*, true>::operator=(char const* const&) llvh::optional_detail::OptionalStorage<hermes::inst::Inst const*, true>::operator=(hermes::inst::Inst const* const&) Line | Count | Source | 120 | 6.62M | OptionalStorage &operator=(const T &y) { | 121 | 6.62M | *reinterpret_cast<T *>(storage.buffer) = y; | 122 | 6.62M | hasVal = true; | 123 | 6.62M | return *this; | 124 | 6.62M | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<unsigned int, true>::operator=(unsigned int const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::SourceMap::Segment::SourceLocation, true>::operator=(hermes::SourceMap::Segment::SourceLocation const&) llvh::optional_detail::OptionalStorage<hermes::irgen::LReference, true>::operator=(hermes::irgen::LReference const&) Line | Count | Source | 120 | 902 | OptionalStorage &operator=(const T &y) { | 121 | 902 | *reinterpret_cast<T *>(storage.buffer) = y; | 122 | 902 | hasVal = true; | 123 | 902 | return *this; | 124 | 902 | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<int, true>::operator=(int const&) llvh::optional_detail::OptionalStorage<hermes::ESTree::Node*, true>::operator=(hermes::ESTree::Node* const&) Line | Count | Source | 120 | 56.9k | OptionalStorage &operator=(const T &y) { | 121 | 56.9k | *reinterpret_cast<T *>(storage.buffer) = y; | 122 | 56.9k | hasVal = true; | 123 | 56.9k | return *this; | 124 | 56.9k | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::SMLoc, true>::operator=(llvh::SMLoc const&) llvh::optional_detail::OptionalStorage<hermes::parser::TokenKind, true>::operator=(hermes::parser::TokenKind const&) Line | Count | Source | 120 | 1.10M | OptionalStorage &operator=(const T &y) { | 121 | 1.10M | *reinterpret_cast<T *>(storage.buffer) = y; | 122 | 1.10M | hasVal = true; | 123 | 1.10M | return *this; | 124 | 1.10M | } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<bool, true>::operator=(bool const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::SubArchType, true>::operator=(llvh::Triple::SubArchType const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::VendorType, true>::operator=(llvh::Triple::VendorType const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::OSType, true>::operator=(llvh::Triple::OSType const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::ObjectFormatType, true>::operator=(llvh::Triple::ObjectFormatType const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::ArchType, true>::operator=(llvh::Triple::ArchType const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::Triple::EnvironmentType, true>::operator=(llvh::Triple::EnvironmentType const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::StringRef, true>::operator=(llvh::StringRef const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::AArch64::ArchKind, true>::operator=(llvh::AArch64::ArchKind const&) Unexecuted instantiation: llvh::optional_detail::OptionalStorage<llvh::ARM::ISAKind, true>::operator=(llvh::ARM::ISAKind const&) |
125 | | |
126 | 6.62M | void reset() { hasVal = false; }llvh::optional_detail::OptionalStorage<hermes::inst::Inst const*, true>::reset() Line | Count | Source | 126 | 6.62M | void reset() { hasVal = false; } |
Unexecuted instantiation: llvh::optional_detail::OptionalStorage<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject>, true>::reset() llvh::optional_detail::OptionalStorage<hermes::irgen::LReference, true>::reset() Line | Count | Source | 126 | 774 | void reset() { hasVal = false; } |
|
127 | | }; |
128 | | #endif |
129 | | } // namespace optional_detail |
130 | | |
131 | | template <typename T> class Optional { |
132 | | optional_detail::OptionalStorage<T, isPodLike<T>::value> Storage; |
133 | | |
134 | | public: |
135 | | using value_type = T; |
136 | | |
137 | 4.69M | constexpr Optional() {}llvh::Optional<bool>::Optional() Line | Count | Source | 137 | 196 | constexpr Optional() {} |
Unexecuted instantiation: llvh::Optional<unsigned int>::Optional() llvh::Optional<hermes::vm::Handle<hermes::vm::JSArray> >::Optional() Line | Count | Source | 137 | 27 | constexpr Optional() {} |
Unexecuted instantiation: llvh::Optional<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject> >::Optional() Unexecuted instantiation: llvh::Optional<hermes::vm::SymbolID>::Optional() llvh::Optional<std::__1::thread>::Optional() Line | Count | Source | 137 | 226 | constexpr Optional() {} |
Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::Optional() llvh::Optional<hermes::irgen::FunctionContext>::Optional() Line | Count | Source | 137 | 147 | constexpr Optional() {} |
llvh::Optional<hermes::irgen::LReference>::Optional() Line | Count | Source | 137 | 819 | constexpr Optional() {} |
Unexecuted instantiation: llvh::Optional<hermes::irgen::SurroundingTry>::Optional() Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::Optional() Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::Optional() llvh::Optional<hermes::ESTree::Node*>::Optional() Line | Count | Source | 137 | 22 | constexpr Optional() {} |
llvh::Optional<hermes::parser::TokenKind>::Optional() Line | Count | Source | 137 | 4.68M | constexpr Optional() {} |
llvh::Optional<hermes::regex::CharacterClassCodepointRanges>::Optional() Line | Count | Source | 137 | 2.65k | constexpr Optional() {} |
llvh::Optional<hermes::regex::CharacterClass>::Optional() Line | Count | Source | 137 | 2.22k | constexpr Optional() {} |
Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::Optional() Unexecuted instantiation: llvh::Optional<char const*>::Optional() Unexecuted instantiation: llvh::Optional<llvh::Triple::SubArchType>::Optional() Unexecuted instantiation: llvh::Optional<llvh::Triple::VendorType>::Optional() Unexecuted instantiation: llvh::Optional<llvh::Triple::OSType>::Optional() Unexecuted instantiation: llvh::Optional<llvh::Triple::ObjectFormatType>::Optional() Unexecuted instantiation: llvh::Optional<llvh::Triple::ArchType>::Optional() Unexecuted instantiation: llvh::Optional<llvh::Triple::EnvironmentType>::Optional() Unexecuted instantiation: llvh::Optional<llvh::StringRef>::Optional() Unexecuted instantiation: llvh::Optional<llvh::AArch64::ArchKind>::Optional() Unexecuted instantiation: llvh::Optional<llvh::ARM::ISAKind>::Optional() |
138 | 5.12M | constexpr Optional(NoneType) {}Unexecuted instantiation: llvh::Optional<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::CompressedPointer>::Optional(llvh::NoneType) llvh::Optional<unsigned int>::Optional(llvh::NoneType) Line | Count | Source | 138 | 1.40M | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::vm::NamedPropertyDescriptor>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::SymbolID>::Optional(llvh::NoneType) llvh::Optional<hermes::vm::Handle<hermes::vm::Callable> >::Optional(llvh::NoneType) Line | Count | Source | 138 | 2 | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::vm::Handle<hermes::vm::HermesValue> >::Optional(llvh::NoneType) Line | Count | Source | 138 | 222k | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::JSError> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::StringBuilder>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags> >::Optional(llvh::NoneType) llvh::Optional<hermes::regex::SyntaxFlags>::Optional(llvh::NoneType) Line | Count | Source | 138 | 1 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::IteratorRecord>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HiddenClass> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::Debugger::BreakpointLocation const>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::ScopeRegAndDescriptorChain>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::InterpreterState, unsigned int> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::InterpreterState>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::vm::SamplingProfiler::StackFrame>::Optional(llvh::NoneType) llvh::Optional<unsigned char>::Optional(llvh::NoneType) Line | Count | Source | 138 | 19.7k | constexpr Optional(NoneType) {} |
llvh::Optional<int>::Optional(llvh::NoneType) Line | Count | Source | 138 | 7.86k | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocation>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<llvh::SmallPtrSet<hermes::BasicBlock*, 4u> >::Optional(llvh::NoneType) llvh::Optional<llvh::StringRef>::Optional(llvh::NoneType) Line | Count | Source | 138 | 46.2k | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::BinaryOperatorInst::OpKind>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::Optional(llvh::NoneType) llvh::Optional<unsigned long>::Optional(llvh::NoneType) Line | Count | Source | 138 | 14 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocationFIndex>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::Optional(llvh::NoneType) llvh::Optional<hermes::ESTree::ProgramNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 66 | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 11 | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::ESTree::FunctionLikeNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 14 | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::ESTree::Node*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 3.42M | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::ESTree::BlockStatementNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 54 | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::ESTree::IdentifierNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 163 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::VariableDeclarationNode*>::Optional(llvh::NoneType) llvh::Optional<char const*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 442 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::VariableDeclaratorNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ArrayPatternNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::AssignmentPatternNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ObjectPatternNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::PropertyNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::IfStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::WhileStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::DoWhileStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ContinueStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::BreakStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ReturnStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::WithStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::SwitchStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ThrowStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::TryStatementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::DebuggerStatementNode*>::Optional(llvh::NoneType) llvh::Optional<hermes::ESTree::ArrayExpressionNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 2 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ObjectExpressionNode*>::Optional(llvh::NoneType) llvh::Optional<hermes::ESTree::FunctionExpressionNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 3 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::YieldExpressionNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassDeclarationNode*>::Optional(llvh::NoneType) llvh::Optional<hermes::ESTree::ClassExpressionNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 2 | constexpr Optional(NoneType) {} |
llvh::Optional<hermes::ESTree::ClassBodyNode*>::Optional(llvh::NoneType) Line | Count | Source | 138 | 2 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::StringLiteralNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportDeclarationNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::UniqueString*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportSpecifierNode*>::Optional(llvh::NoneType) llvh::Optional<bool>::Optional(llvh::NoneType) Line | Count | Source | 138 | 62 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::MatchBindingPatternNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeAnnotationNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeParamNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::GenericTypeAnnotationNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassImplementsNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::JSXOpeningElementNode*>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<hermes::ESTree::TSTypeReferenceNode*>::Optional(llvh::NoneType) llvh::Optional<char16_t>::Optional(llvh::NoneType) Line | Count | Source | 138 | 463 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom>::Optional(llvh::NoneType) llvh::Optional<hermes::CompiledRegExp>::Optional(llvh::NoneType) Line | Count | Source | 138 | 2 | constexpr Optional(NoneType) {} |
Unexecuted instantiation: llvh::Optional<hermes::SourceErrorManager::LineCoord>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<llvh::APInt>::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<llvh::ArrayRef<llvh::StringRef> >::Optional(llvh::NoneType) Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::Optional(llvh::NoneType) |
139 | | |
140 | 17.1M | Optional(const T &y) : Storage(y) {}Unexecuted instantiation: llvh::Optional<hermes::vm::NamedPropertyDescriptor>::Optional(hermes::vm::NamedPropertyDescriptor const&) Unexecuted instantiation: llvh::Optional<hermes::vm::Debugger::BreakpointLocation const>::Optional(hermes::vm::Debugger::BreakpointLocation const&) Unexecuted instantiation: llvh::Optional<hermes::vm::SymbolID>::Optional(hermes::vm::SymbolID const&) Unexecuted instantiation: llvh::Optional<hermes::vm::SamplingProfiler::StackFrame>::Optional(hermes::vm::SamplingProfiler::StackFrame const&) llvh::Optional<int>::Optional(int const&) Line | Count | Source | 140 | 1.19k | Optional(const T &y) : Storage(y) {} |
Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::Optional(hermes::SourceMap::Segment const&) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::Optional(hermes::parser::JSONValue* const&) llvh::Optional<hermes::ESTree::ProgramNode*>::Optional(hermes::ESTree::ProgramNode* const&) Line | Count | Source | 140 | 421 | Optional(const T &y) : Storage(y) {} |
Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::Optional(llvh::SMLoc const&) llvh::Optional<hermes::ESTree::Node*>::Optional(hermes::ESTree::Node* const&) Line | Count | Source | 140 | 17.1M | Optional(const T &y) : Storage(y) {} |
llvh::Optional<unsigned int>::Optional(unsigned int const&) Line | Count | Source | 140 | 3.03k | Optional(const T &y) : Storage(y) {} |
Unexecuted instantiation: llvh::Optional<unsigned long>::Optional(unsigned long const&) |
141 | 0 | Optional(const Optional &O) = default; Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::Optional(llvh::Optional<facebook::hermes::debugger::SourceLocation> const&) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::Optional(llvh::Optional<hermes::parser::JSONSharedValue> const&) |
142 | | |
143 | 29.4M | Optional(T &&y) : Storage(std::forward<T>(y)) {}llvh::Optional<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive>::Optional(hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive&&) Line | Count | Source | 143 | 636k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::vm::CompressedPointer>::Optional(hermes::vm::CompressedPointer&&) llvh::Optional<unsigned int>::Optional(unsigned int&&) Line | Count | Source | 143 | 51.4k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::vm::NamedPropertyDescriptor>::Optional(hermes::vm::NamedPropertyDescriptor&&) llvh::Optional<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int> >::Optional(std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int>&&) Line | Count | Source | 143 | 846k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::vm::SymbolID>::Optional(hermes::vm::SymbolID&&) Line | Count | Source | 143 | 444k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::vm::Handle<hermes::vm::JSError> >::Optional(hermes::vm::Handle<hermes::vm::JSError>&&) Line | Count | Source | 143 | 41 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::vm::StringBuilder>::Optional(hermes::vm::StringBuilder&&) Line | Count | Source | 143 | 124k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags> >::Optional(std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags>&&) Line | Count | Source | 143 | 931 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::regex::SyntaxFlags>::Optional(hermes::regex::SyntaxFlags&&) Line | Count | Source | 143 | 1.82k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::Optional(llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u>&&) llvh::Optional<hermes::vm::IteratorRecord>::Optional(hermes::vm::IteratorRecord&&) Line | Count | Source | 143 | 2 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::inst::Inst const*>::Optional(hermes::inst::Inst const*&&) Line | Count | Source | 143 | 113 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::Optional(hermes::vm::Runtime::StackFrameInfo&&) Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HiddenClass> >::Optional(hermes::vm::Handle<hermes::vm::HiddenClass>&&) Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::Callable> >::Optional(hermes::vm::Handle<hermes::vm::Callable>&&) Unexecuted instantiation: llvh::Optional<hermes::vm::ScopeRegAndDescriptorChain>::Optional(hermes::vm::ScopeRegAndDescriptorChain&&) Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::InterpreterState, unsigned int> >::Optional(std::__1::pair<hermes::vm::InterpreterState, unsigned int>&&) llvh::Optional<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool> >::Optional(std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool>&&) Line | Count | Source | 143 | 544k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<int>::Optional(int&&) Line | Count | Source | 143 | 355k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<unsigned char>::Optional(unsigned char&&) Line | Count | Source | 143 | 200k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocation>::Optional(hermes::SourceMapTextLocation&&) llvh::Optional<llvh::SmallPtrSet<hermes::BasicBlock*, 4u> >::Optional(llvh::SmallPtrSet<hermes::BasicBlock*, 4u>&&) Line | Count | Source | 143 | 1.65k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<llvh::StringRef>::Optional(llvh::StringRef&&) Unexecuted instantiation: llvh::Optional<hermes::BinaryOperatorInst::OpKind>::Optional(hermes::BinaryOperatorInst::OpKind&&) Unexecuted instantiation: llvh::Optional<unsigned long>::Optional(unsigned long&&) Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::Optional(hermes::SourceMap::Segment&&) Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocationFIndex>::Optional(hermes::SourceMapTextLocationFIndex&&) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::Optional(hermes::parser::JSONValue*&&) llvh::Optional<bool>::Optional(bool&&) Line | Count | Source | 143 | 4.49k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::ProgramNode*>::Optional(hermes::ESTree::ProgramNode*&&) Line | Count | Source | 143 | 439 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::Optional(hermes::ESTree::FunctionDeclarationNode*&&) Line | Count | Source | 143 | 3.89k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::FunctionLikeNode*>::Optional(hermes::ESTree::FunctionLikeNode*&&) Line | Count | Source | 143 | 4.05k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::Node*>::Optional(hermes::ESTree::Node*&&) Line | Count | Source | 143 | 25.7M | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::BlockStatementNode*>::Optional(hermes::ESTree::BlockStatementNode*&&) Line | Count | Source | 143 | 4.13k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::IdentifierNode*>::Optional(hermes::ESTree::IdentifierNode*&&) Line | Count | Source | 143 | 7.61k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::VariableDeclarationNode*>::Optional(hermes::ESTree::VariableDeclarationNode*&&) Line | Count | Source | 143 | 3.65k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::PrivateNameNode*>::Optional(hermes::ESTree::PrivateNameNode*&&) llvh::Optional<char const*>::Optional(char const*&&) Line | Count | Source | 143 | 6.75k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::VariableDeclaratorNode*>::Optional(hermes::ESTree::VariableDeclaratorNode*&&) Line | Count | Source | 143 | 3.65k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::ArrayPatternNode*>::Optional(hermes::ESTree::ArrayPatternNode*&&) Line | Count | Source | 143 | 236 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::AssignmentPatternNode*>::Optional(hermes::ESTree::AssignmentPatternNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ObjectPatternNode*>::Optional(hermes::ESTree::ObjectPatternNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::PropertyNode*>::Optional(hermes::ESTree::PropertyNode*&&) llvh::Optional<hermes::ESTree::EmptyStatementNode*>::Optional(hermes::ESTree::EmptyStatementNode*&&) Line | Count | Source | 143 | 453k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::IfStatementNode*>::Optional(hermes::ESTree::IfStatementNode*&&) Line | Count | Source | 143 | 1 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WhileStatementNode*>::Optional(hermes::ESTree::WhileStatementNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::DoWhileStatementNode*>::Optional(hermes::ESTree::DoWhileStatementNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ContinueStatementNode*>::Optional(hermes::ESTree::ContinueStatementNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::BreakStatementNode*>::Optional(hermes::ESTree::BreakStatementNode*&&) llvh::Optional<hermes::ESTree::ReturnStatementNode*>::Optional(hermes::ESTree::ReturnStatementNode*&&) Line | Count | Source | 143 | 2 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WithStatementNode*>::Optional(hermes::ESTree::WithStatementNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::SwitchStatementNode*>::Optional(hermes::ESTree::SwitchStatementNode*&&) llvh::Optional<hermes::ESTree::ThrowStatementNode*>::Optional(hermes::ESTree::ThrowStatementNode*&&) Line | Count | Source | 143 | 6 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::TryStatementNode*>::Optional(hermes::ESTree::TryStatementNode*&&) Line | Count | Source | 143 | 1 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::DebuggerStatementNode*>::Optional(hermes::ESTree::DebuggerStatementNode*&&) Line | Count | Source | 143 | 80 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::ArrayExpressionNode*>::Optional(hermes::ESTree::ArrayExpressionNode*&&) Line | Count | Source | 143 | 1.71k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::ObjectExpressionNode*>::Optional(hermes::ESTree::ObjectExpressionNode*&&) Line | Count | Source | 143 | 2 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::ESTree::FunctionExpressionNode*>::Optional(hermes::ESTree::FunctionExpressionNode*&&) Line | Count | Source | 143 | 161 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::YieldExpressionNode*>::Optional(hermes::ESTree::YieldExpressionNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassDeclarationNode*>::Optional(hermes::ESTree::ClassDeclarationNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassExpressionNode*>::Optional(hermes::ESTree::ClassExpressionNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassBodyNode*>::Optional(hermes::ESTree::ClassBodyNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::StringLiteralNode*>::Optional(hermes::ESTree::StringLiteralNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportDeclarationNode*>::Optional(hermes::ESTree::ImportDeclarationNode*&&) Unexecuted instantiation: llvh::Optional<hermes::UniqueString*>::Optional(hermes::UniqueString*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportSpecifierNode*>::Optional(hermes::ESTree::ImportSpecifierNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::MatchBindingPatternNode*>::Optional(hermes::ESTree::MatchBindingPatternNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeAnnotationNode*>::Optional(hermes::ESTree::FunctionTypeAnnotationNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeParamNode*>::Optional(hermes::ESTree::FunctionTypeParamNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::GenericTypeAnnotationNode*>::Optional(hermes::ESTree::GenericTypeAnnotationNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassImplementsNode*>::Optional(hermes::ESTree::ClassImplementsNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::JSXOpeningElementNode*>::Optional(hermes::ESTree::JSXOpeningElementNode*&&) Unexecuted instantiation: llvh::Optional<hermes::ESTree::TSTypeReferenceNode*>::Optional(hermes::ESTree::TSTypeReferenceNode*&&) llvh::Optional<char16_t>::Optional(char16_t&&) Line | Count | Source | 143 | 12.4k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::regex::CharacterClass>::Optional(hermes::regex::CharacterClass&&) Line | Count | Source | 143 | 432 | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom>::Optional(hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom&&) Line | Count | Source | 143 | 2.65k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<hermes::regex::CharacterClassCodepointRanges>::Optional(hermes::regex::CharacterClassCodepointRanges&&) llvh::Optional<hermes::CompiledRegExp>::Optional(hermes::CompiledRegExp&&) Line | Count | Source | 143 | 1.82k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
llvh::Optional<hermes::SourceErrorManager::LineCoord>::Optional(hermes::SourceErrorManager::LineCoord&&) Line | Count | Source | 143 | 16.1k | Optional(T &&y) : Storage(std::forward<T>(y)) {} |
Unexecuted instantiation: llvh::Optional<llvh::APInt>::Optional(llvh::APInt&&) Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::Optional(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&) |
144 | 0 | Optional(Optional &&O) = default; Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::Optional(llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >&&) Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::Optional(llvh::Optional<facebook::hermes::debugger::SourceLocation>&&) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::Optional(llvh::Optional<hermes::parser::JSONSharedValue>&&) |
145 | | |
146 | 1.16M | Optional &operator=(T &&y) { |
147 | 1.16M | Storage = std::move(y); |
148 | 1.16M | return *this; |
149 | 1.16M | } Unexecuted instantiation: llvh::Optional<char const*>::operator=(char const*&&) Unexecuted instantiation: llvh::Optional<unsigned int>::operator=(unsigned int&&) Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::JSArray> >::operator=(hermes::vm::Handle<hermes::vm::JSArray>&&) Unexecuted instantiation: llvh::Optional<std::__1::thread>::operator=(std::__1::thread&&) Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::operator=(hermes::SourceMap::Segment::SourceLocation&&) llvh::Optional<hermes::irgen::LReference>::operator=(hermes::irgen::LReference&&) Line | Count | Source | 146 | 902 | Optional &operator=(T &&y) { | 147 | 902 | Storage = std::move(y); | 148 | 902 | return *this; | 149 | 902 | } |
Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::operator=(hermes::parser::JSONSharedValue&&) Unexecuted instantiation: llvh::Optional<int>::operator=(int&&) llvh::Optional<hermes::ESTree::Node*>::operator=(hermes::ESTree::Node*&&) Line | Count | Source | 146 | 56.9k | Optional &operator=(T &&y) { | 147 | 56.9k | Storage = std::move(y); | 148 | 56.9k | return *this; | 149 | 56.9k | } |
Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::operator=(llvh::SMLoc&&) llvh::Optional<hermes::parser::TokenKind>::operator=(hermes::parser::TokenKind&&) Line | Count | Source | 146 | 1.10M | Optional &operator=(T &&y) { | 147 | 1.10M | Storage = std::move(y); | 148 | 1.10M | return *this; | 149 | 1.10M | } |
Unexecuted instantiation: llvh::Optional<bool>::operator=(bool&&) Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::operator=(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&) Unexecuted instantiation: llvh::Optional<llvh::Triple::SubArchType>::operator=(llvh::Triple::SubArchType&&) Unexecuted instantiation: llvh::Optional<llvh::Triple::VendorType>::operator=(llvh::Triple::VendorType&&) Unexecuted instantiation: llvh::Optional<llvh::Triple::OSType>::operator=(llvh::Triple::OSType&&) Unexecuted instantiation: llvh::Optional<llvh::Triple::ObjectFormatType>::operator=(llvh::Triple::ObjectFormatType&&) Unexecuted instantiation: llvh::Optional<llvh::Triple::ArchType>::operator=(llvh::Triple::ArchType&&) Unexecuted instantiation: llvh::Optional<llvh::Triple::EnvironmentType>::operator=(llvh::Triple::EnvironmentType&&) Unexecuted instantiation: llvh::Optional<llvh::StringRef>::operator=(llvh::StringRef&&) Unexecuted instantiation: llvh::Optional<llvh::AArch64::ArchKind>::operator=(llvh::AArch64::ArchKind&&) Unexecuted instantiation: llvh::Optional<llvh::ARM::ISAKind>::operator=(llvh::ARM::ISAKind&&) |
150 | 0 | Optional &operator=(Optional &&O) = default; Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::operator=(llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >&&) Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::operator=(llvh::Optional<facebook::hermes::debugger::SourceLocation>&&) |
151 | | |
152 | | /// Create a new object by constructing it in place with the given arguments. |
153 | 0 | template <typename... ArgTypes> void emplace(ArgTypes &&... Args) { |
154 | 0 | reset(); |
155 | 0 | Storage.hasVal = true; |
156 | 0 | new (getPointer()) T(std::forward<ArgTypes>(Args)...); |
157 | 0 | } Unexecuted instantiation: void llvh::Optional<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject> >::emplace<hermes::vm::PointerBase&, hermes::vm::HadesGC&, hermes::vm::testhelpers::DummyObject*&>(hermes::vm::PointerBase&, hermes::vm::HadesGC&, hermes::vm::testhelpers::DummyObject*&) Unexecuted instantiation: void llvh::Optional<hermes::irgen::FunctionContext>::emplace<hermes::irgen::ESTreeIRGen*, hermes::Function*&, decltype(nullptr)>(hermes::irgen::ESTreeIRGen*&&, hermes::Function*&, decltype(nullptr)&&) Unexecuted instantiation: ESTreeIRGen-except.cpp:void llvh::Optional<hermes::irgen::SurroundingTry>::emplace<hermes::irgen::FunctionContext*, hermes::ESTree::TryStatementNode* const&, llvh::SMLoc, hermes::irgen::ESTreeIRGen::genTryStatement(hermes::ESTree::TryStatementNode*)::$_0::operator()() const::{lambda(hermes::ESTree::Node*, hermes::irgen::ControlFlowChange, hermes::BasicBlock*)#1}>(hermes::irgen::FunctionContext*&&, hermes::ESTree::TryStatementNode* const&, llvh::SMLoc&&, hermes::irgen::ESTreeIRGen::genTryStatement(hermes::ESTree::TryStatementNode*)::$_0::operator()() const::{lambda(hermes::ESTree::Node*, hermes::irgen::ControlFlowChange, hermes::BasicBlock*)#1}&&)Unexecuted instantiation: void llvh::Optional<hermes::irgen::SurroundingTry>::emplace<hermes::irgen::FunctionContext*, hermes::ESTree::TryStatementNode* const&>(hermes::irgen::FunctionContext*&&, hermes::ESTree::TryStatementNode* const&) |
158 | | |
159 | | static inline Optional create(const T *y) { |
160 | | return y ? Optional(*y) : Optional(); |
161 | | } |
162 | | |
163 | 6.62M | Optional &operator=(const T &y) { |
164 | 6.62M | Storage = y; |
165 | 6.62M | return *this; |
166 | 6.62M | } Unexecuted instantiation: llvh::Optional<unsigned long>::operator=(unsigned long const&) llvh::Optional<hermes::inst::Inst const*>::operator=(hermes::inst::Inst const* const&) Line | Count | Source | 163 | 6.62M | Optional &operator=(const T &y) { | 164 | 6.62M | Storage = y; | 165 | 6.62M | return *this; | 166 | 6.62M | } |
Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::operator=(facebook::hermes::debugger::SourceLocation const&) Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::operator=(hermes::parser::JSONSharedValue const&) |
167 | | Optional &operator=(const Optional &O) = default; |
168 | | |
169 | 6.62M | void reset() { Storage.reset(); }llvh::Optional<hermes::inst::Inst const*>::reset() Line | Count | Source | 169 | 6.62M | void reset() { Storage.reset(); } |
Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::reset() Unexecuted instantiation: llvh::Optional<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject> >::reset() Unexecuted instantiation: llvh::Optional<std::__1::thread>::reset() Unexecuted instantiation: llvh::Optional<hermes::irgen::FunctionContext>::reset() llvh::Optional<hermes::irgen::LReference>::reset() Line | Count | Source | 169 | 774 | void reset() { Storage.reset(); } |
Unexecuted instantiation: llvh::Optional<hermes::irgen::SurroundingTry>::reset() |
170 | | |
171 | 14.6M | const T *getPointer() const { |
172 | 14.6M | assert(Storage.hasVal); |
173 | 14.6M | return reinterpret_cast<const T *>(Storage.storage.buffer); |
174 | 14.6M | } llvh::Optional<hermes::inst::Inst const*>::getPointer() const Line | Count | Source | 171 | 14.6M | const T *getPointer() const { | 172 | 14.6M | assert(Storage.hasVal); | 173 | 14.6M | return reinterpret_cast<const T *>(Storage.storage.buffer); | 174 | 14.6M | } |
Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::getPointer() const Unexecuted instantiation: llvh::Optional<unsigned int>::getPointer() const Unexecuted instantiation: llvh::Optional<hermes::vm::SamplingProfiler::StackFrame>::getPointer() const Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::getPointer() const Unexecuted instantiation: llvh::Optional<bool>::getPointer() const llvh::Optional<int>::getPointer() const Line | Count | Source | 171 | 147 | const T *getPointer() const { | 172 | 147 | assert(Storage.hasVal); | 173 | 147 | return reinterpret_cast<const T *>(Storage.storage.buffer); | 174 | 147 | } |
Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::getPointer() const Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::getPointer() const llvh::Optional<hermes::regex::CharacterClass>::getPointer() const Line | Count | Source | 171 | 432 | const T *getPointer() const { | 172 | 432 | assert(Storage.hasVal); | 173 | 432 | return reinterpret_cast<const T *>(Storage.storage.buffer); | 174 | 432 | } |
Unexecuted instantiation: llvh::Optional<hermes::regex::CharacterClassCodepointRanges>::getPointer() const Unexecuted instantiation: llvh::Optional<unsigned long>::getPointer() const Unexecuted instantiation: llvh::Optional<llvh::StringRef>::getPointer() const |
175 | 54.5M | T *getPointer() { |
176 | 54.5M | assert(Storage.hasVal); |
177 | 54.5M | return reinterpret_cast<T *>(Storage.storage.buffer); |
178 | 54.5M | } llvh::Optional<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive>::getPointer() Line | Count | Source | 175 | 1.27M | T *getPointer() { | 176 | 1.27M | assert(Storage.hasVal); | 177 | 1.27M | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.27M | } |
llvh::Optional<unsigned int>::getPointer() Line | Count | Source | 175 | 42.8k | T *getPointer() { | 176 | 42.8k | assert(Storage.hasVal); | 177 | 42.8k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 42.8k | } |
Unexecuted instantiation: llvh::Optional<char const*>::getPointer() Unexecuted instantiation: llvh::Optional<unsigned long>::getPointer() llvh::Optional<unsigned char>::getPointer() Line | Count | Source | 175 | 100k | T *getPointer() { | 176 | 100k | assert(Storage.hasVal); | 177 | 100k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 100k | } |
llvh::Optional<int>::getPointer() Line | Count | Source | 175 | 64.0k | T *getPointer() { | 176 | 64.0k | assert(Storage.hasVal); | 177 | 64.0k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 64.0k | } |
llvh::Optional<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool> >::getPointer() Line | Count | Source | 175 | 1.13M | T *getPointer() { | 176 | 1.13M | assert(Storage.hasVal); | 177 | 1.13M | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.13M | } |
Unexecuted instantiation: llvh::Optional<hermes::vm::NamedPropertyDescriptor>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::CompressedPointer>::getPointer() llvh::Optional<hermes::vm::SymbolID>::getPointer() Line | Count | Source | 175 | 444k | T *getPointer() { | 176 | 444k | assert(Storage.hasVal); | 177 | 444k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 444k | } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HiddenClass> >::getPointer() llvh::Optional<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int> >::getPointer() Line | Count | Source | 175 | 1.69M | T *getPointer() { | 176 | 1.69M | assert(Storage.hasVal); | 177 | 1.69M | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.69M | } |
llvh::Optional<hermes::vm::IteratorRecord>::getPointer() Line | Count | Source | 175 | 2 | T *getPointer() { | 176 | 2 | assert(Storage.hasVal); | 177 | 2 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 2 | } |
llvh::Optional<hermes::vm::Handle<hermes::vm::JSError> >::getPointer() Line | Count | Source | 175 | 41 | T *getPointer() { | 176 | 41 | assert(Storage.hasVal); | 177 | 41 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 41 | } |
llvh::Optional<hermes::vm::StringBuilder>::getPointer() Line | Count | Source | 175 | 459k | T *getPointer() { | 176 | 459k | assert(Storage.hasVal); | 177 | 459k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 459k | } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::JSArray> >::getPointer() llvh::Optional<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags> >::getPointer() Line | Count | Source | 175 | 3.49k | T *getPointer() { | 176 | 3.49k | assert(Storage.hasVal); | 177 | 3.49k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 3.49k | } |
llvh::Optional<hermes::regex::SyntaxFlags>::getPointer() Line | Count | Source | 175 | 1.82k | T *getPointer() { | 176 | 1.82k | assert(Storage.hasVal); | 177 | 1.82k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.82k | } |
Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::Callable> >::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HermesValue> >::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::Debugger::BreakpointLocation const>::getPointer() Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::InterpreterState, unsigned int> >::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::ScopeRegAndDescriptorChain>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject> >::getPointer() Unexecuted instantiation: llvh::Optional<llvh::StringRef>::getPointer() Unexecuted instantiation: llvh::Optional<std::__1::thread>::getPointer() llvh::Optional<hermes::ESTree::ProgramNode*>::getPointer() Line | Count | Source | 175 | 982 | T *getPointer() { | 176 | 982 | assert(Storage.hasVal); | 177 | 982 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 982 | } |
llvh::Optional<llvh::SmallPtrSet<hermes::BasicBlock*, 4u> >::getPointer() Line | Count | Source | 175 | 1.64k | T *getPointer() { | 176 | 1.64k | assert(Storage.hasVal); | 177 | 1.64k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.64k | } |
llvh::Optional<hermes::ESTree::Node*>::getPointer() Line | Count | Source | 175 | 47.7M | T *getPointer() { | 176 | 47.7M | assert(Storage.hasVal); | 177 | 47.7M | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 47.7M | } |
Unexecuted instantiation: llvh::Optional<hermes::irgen::FunctionContext>::getPointer() llvh::Optional<hermes::irgen::LReference>::getPointer() Line | Count | Source | 175 | 2.54k | T *getPointer() { | 176 | 2.54k | assert(Storage.hasVal); | 177 | 2.54k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 2.54k | } |
Unexecuted instantiation: llvh::Optional<hermes::irgen::SurroundingTry>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocation>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocationFIndex>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::YieldExpressionNode*>::getPointer() llvh::Optional<hermes::ESTree::FunctionLikeNode*>::getPointer() Line | Count | Source | 175 | 4.05k | T *getPointer() { | 176 | 4.05k | assert(Storage.hasVal); | 177 | 4.05k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 4.05k | } |
llvh::Optional<hermes::ESTree::IdentifierNode*>::getPointer() Line | Count | Source | 175 | 7.60k | T *getPointer() { | 176 | 7.60k | assert(Storage.hasVal); | 177 | 7.60k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 7.60k | } |
llvh::Optional<hermes::ESTree::BlockStatementNode*>::getPointer() Line | Count | Source | 175 | 4.40k | T *getPointer() { | 176 | 4.40k | assert(Storage.hasVal); | 177 | 4.40k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 4.40k | } |
llvh::Optional<hermes::ESTree::VariableDeclarationNode*>::getPointer() Line | Count | Source | 175 | 3.65k | T *getPointer() { | 176 | 3.65k | assert(Storage.hasVal); | 177 | 3.65k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 3.65k | } |
llvh::Optional<hermes::ESTree::EmptyStatementNode*>::getPointer() Line | Count | Source | 175 | 453k | T *getPointer() { | 176 | 453k | assert(Storage.hasVal); | 177 | 453k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 453k | } |
llvh::Optional<hermes::ESTree::IfStatementNode*>::getPointer() Line | Count | Source | 175 | 1 | T *getPointer() { | 176 | 1 | assert(Storage.hasVal); | 177 | 1 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1 | } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WhileStatementNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::DoWhileStatementNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::ContinueStatementNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::BreakStatementNode*>::getPointer() llvh::Optional<hermes::ESTree::ReturnStatementNode*>::getPointer() Line | Count | Source | 175 | 2 | T *getPointer() { | 176 | 2 | assert(Storage.hasVal); | 177 | 2 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 2 | } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WithStatementNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::SwitchStatementNode*>::getPointer() llvh::Optional<hermes::ESTree::ThrowStatementNode*>::getPointer() Line | Count | Source | 175 | 6 | T *getPointer() { | 176 | 6 | assert(Storage.hasVal); | 177 | 6 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 6 | } |
llvh::Optional<hermes::ESTree::TryStatementNode*>::getPointer() Line | Count | Source | 175 | 1 | T *getPointer() { | 176 | 1 | assert(Storage.hasVal); | 177 | 1 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1 | } |
llvh::Optional<hermes::ESTree::DebuggerStatementNode*>::getPointer() Line | Count | Source | 175 | 80 | T *getPointer() { | 176 | 80 | assert(Storage.hasVal); | 177 | 80 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 80 | } |
llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::getPointer() Line | Count | Source | 175 | 3.89k | T *getPointer() { | 176 | 3.89k | assert(Storage.hasVal); | 177 | 3.89k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 3.89k | } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassDeclarationNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportDeclarationNode*>::getPointer() llvh::Optional<hermes::ESTree::VariableDeclaratorNode*>::getPointer() Line | Count | Source | 175 | 3.65k | T *getPointer() { | 176 | 3.65k | assert(Storage.hasVal); | 177 | 3.65k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 3.65k | } |
llvh::Optional<hermes::ESTree::ArrayPatternNode*>::getPointer() Line | Count | Source | 175 | 236 | T *getPointer() { | 176 | 236 | assert(Storage.hasVal); | 177 | 236 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 236 | } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ObjectPatternNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::AssignmentPatternNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::PropertyNode*>::getPointer() llvh::Optional<hermes::ESTree::FunctionExpressionNode*>::getPointer() Line | Count | Source | 175 | 161 | T *getPointer() { | 176 | 161 | assert(Storage.hasVal); | 177 | 161 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 161 | } |
llvh::Optional<hermes::ESTree::ArrayExpressionNode*>::getPointer() Line | Count | Source | 175 | 1.71k | T *getPointer() { | 176 | 1.71k | assert(Storage.hasVal); | 177 | 1.71k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.71k | } |
llvh::Optional<hermes::ESTree::ObjectExpressionNode*>::getPointer() Line | Count | Source | 175 | 2 | T *getPointer() { | 176 | 2 | assert(Storage.hasVal); | 177 | 2 | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 2 | } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassExpressionNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::PrivateNameNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassImplementsNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassBodyNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::UniqueString*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::StringLiteralNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportSpecifierNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::MatchBindingPatternNode*>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::GenericTypeAnnotationNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeParamNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeAnnotationNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::JSXOpeningElementNode*>::getPointer() Unexecuted instantiation: llvh::Optional<hermes::ESTree::TSTypeReferenceNode*>::getPointer() llvh::Optional<hermes::parser::TokenKind>::getPointer() Line | Count | Source | 175 | 1.10M | T *getPointer() { | 176 | 1.10M | assert(Storage.hasVal); | 177 | 1.10M | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.10M | } |
llvh::Optional<hermes::CompiledRegExp>::getPointer() Line | Count | Source | 175 | 1.82k | T *getPointer() { | 176 | 1.82k | assert(Storage.hasVal); | 177 | 1.82k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 1.82k | } |
llvh::Optional<char16_t>::getPointer() Line | Count | Source | 175 | 12.4k | T *getPointer() { | 176 | 12.4k | assert(Storage.hasVal); | 177 | 12.4k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 12.4k | } |
llvh::Optional<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom>::getPointer() Line | Count | Source | 175 | 2.65k | T *getPointer() { | 176 | 2.65k | assert(Storage.hasVal); | 177 | 2.65k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 2.65k | } |
llvh::Optional<hermes::SourceErrorManager::LineCoord>::getPointer() Line | Count | Source | 175 | 64.4k | T *getPointer() { | 176 | 64.4k | assert(Storage.hasVal); | 177 | 64.4k | return reinterpret_cast<T *>(Storage.storage.buffer); | 178 | 64.4k | } |
Unexecuted instantiation: llvh::Optional<bool>::getPointer() Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::getPointer() Unexecuted instantiation: llvh::Optional<llvh::ArrayRef<llvh::StringRef> >::getPointer() Unexecuted instantiation: llvh::Optional<llvh::Triple::SubArchType>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::Triple::VendorType>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::Triple::OSType>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::Triple::ObjectFormatType>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::Triple::ArchType>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::Triple::EnvironmentType>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::AArch64::ArchKind>::getPointer() Unexecuted instantiation: llvh::Optional<llvh::ARM::ISAKind>::getPointer() |
179 | 0 | const T &getValue() const LLVM_LVALUE_FUNCTION { return *getPointer(); }Unexecuted instantiation: llvh::Optional<unsigned int>::getValue() const & Unexecuted instantiation: llvh::Optional<bool>::getValue() const & Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::getValue() const & Unexecuted instantiation: llvh::Optional<int>::getValue() const & Unexecuted instantiation: llvh::Optional<unsigned long>::getValue() const & |
180 | 41.4M | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); }llvh::Optional<unsigned int>::getValue() & Line | Count | Source | 180 | 24.1k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<unsigned long>::getValue() & llvh::Optional<unsigned char>::getValue() & Line | Count | Source | 180 | 100k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<int>::getValue() & Line | Count | Source | 180 | 63.7k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::vm::NamedPropertyDescriptor>::getValue() & llvh::Optional<hermes::ESTree::ProgramNode*>::getValue() & Line | Count | Source | 180 | 828 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::Node*>::getValue() & Line | Count | Source | 180 | 40.7M | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::irgen::FunctionContext>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocation>::getValue() & llvh::Optional<hermes::ESTree::BlockStatementNode*>::getValue() & Line | Count | Source | 180 | 4.13k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::VariableDeclarationNode*>::getValue() & Line | Count | Source | 180 | 2.76k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::EmptyStatementNode*>::getValue() & Line | Count | Source | 180 | 453k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::IfStatementNode*>::getValue() & Line | Count | Source | 180 | 1 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WhileStatementNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::DoWhileStatementNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::ContinueStatementNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::BreakStatementNode*>::getValue() & llvh::Optional<hermes::ESTree::ReturnStatementNode*>::getValue() & Line | Count | Source | 180 | 2 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WithStatementNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::SwitchStatementNode*>::getValue() & llvh::Optional<hermes::ESTree::ThrowStatementNode*>::getValue() & Line | Count | Source | 180 | 6 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::TryStatementNode*>::getValue() & Line | Count | Source | 180 | 1 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::DebuggerStatementNode*>::getValue() & Line | Count | Source | 180 | 80 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportDeclarationNode*>::getValue() & llvh::Optional<hermes::ESTree::VariableDeclaratorNode*>::getValue() & Line | Count | Source | 180 | 3.65k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::getValue() & llvh::Optional<hermes::ESTree::FunctionExpressionNode*>::getValue() & Line | Count | Source | 180 | 161 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::ArrayExpressionNode*>::getValue() & Line | Count | Source | 180 | 1.71k | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::ObjectExpressionNode*>::getValue() & Line | Count | Source | 180 | 2 | T &getValue() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassExpressionNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportSpecifierNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::MatchBindingPatternNode*>::getValue() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::IdentifierNode*>::getValue() & Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::getValue() & |
181 | | |
182 | 263M | explicit operator bool() const { return Storage.hasVal; }llvh::Optional<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive>::operator bool() const Line | Count | Source | 182 | 1.90M | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<char const*>::operator bool() const Line | Count | Source | 182 | 7.20k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<unsigned long>::operator bool() const llvh::Optional<unsigned char>::operator bool() const Line | Count | Source | 182 | 100k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<int>::operator bool() const Line | Count | Source | 182 | 98.4k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<unsigned int>::operator bool() const Line | Count | Source | 182 | 1.45M | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::inst::Inst const*>::operator bool() const Line | Count | Source | 182 | 251k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool> >::operator bool() const Line | Count | Source | 182 | 1.68M | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::vm::NamedPropertyDescriptor>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::vm::CompressedPointer>::operator bool() const llvh::Optional<hermes::vm::SymbolID>::operator bool() const Line | Count | Source | 182 | 444k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HiddenClass> >::operator bool() const llvh::Optional<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int> >::operator bool() const Line | Count | Source | 182 | 2.53M | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::vm::IteratorRecord>::operator bool() const Line | Count | Source | 182 | 2 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::vm::StringBuilder>::operator bool() const Line | Count | Source | 182 | 584k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::vm::Handle<hermes::vm::JSArray> >::operator bool() const Line | Count | Source | 182 | 27 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags> >::operator bool() const Line | Count | Source | 182 | 4.42k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::regex::SyntaxFlags>::operator bool() const Line | Count | Source | 182 | 1.83k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::operator bool() const llvh::Optional<hermes::vm::Handle<hermes::vm::HermesValue> >::operator bool() const Line | Count | Source | 182 | 222k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Debugger::BreakpointLocation const>::operator bool() const Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::InterpreterState, unsigned int> >::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::vm::ScopeRegAndDescriptorChain>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject> >::operator bool() const llvh::Optional<llvh::StringRef>::operator bool() const Line | Count | Source | 182 | 46.2k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<std::__1::thread>::operator bool() const Line | Count | Source | 182 | 226 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::ProgramNode*>::operator bool() const Line | Count | Source | 182 | 884 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<bool>::operator bool() const Line | Count | Source | 182 | 4.70k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<llvh::SmallPtrSet<hermes::BasicBlock*, 4u> >::operator bool() const Line | Count | Source | 182 | 1.65k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::Node*>::operator bool() const Line | Count | Source | 182 | 42.9M | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::irgen::LReference>::operator bool() const Line | Count | Source | 182 | 2.60k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocationFIndex>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::YieldExpressionNode*>::operator bool() const llvh::Optional<hermes::ESTree::FunctionLikeNode*>::operator bool() const Line | Count | Source | 182 | 4.07k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::IdentifierNode*>::operator bool() const Line | Count | Source | 182 | 11.6k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::BlockStatementNode*>::operator bool() const Line | Count | Source | 182 | 8.16k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::VariableDeclarationNode*>::operator bool() const Line | Count | Source | 182 | 3.65k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::EmptyStatementNode*>::operator bool() const Line | Count | Source | 182 | 453k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::IfStatementNode*>::operator bool() const Line | Count | Source | 182 | 1 | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WhileStatementNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::DoWhileStatementNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::ContinueStatementNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::BreakStatementNode*>::operator bool() const llvh::Optional<hermes::ESTree::ReturnStatementNode*>::operator bool() const Line | Count | Source | 182 | 2 | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::WithStatementNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::SwitchStatementNode*>::operator bool() const llvh::Optional<hermes::ESTree::ThrowStatementNode*>::operator bool() const Line | Count | Source | 182 | 6 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::TryStatementNode*>::operator bool() const Line | Count | Source | 182 | 1 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::DebuggerStatementNode*>::operator bool() const Line | Count | Source | 182 | 80 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::operator bool() const Line | Count | Source | 182 | 3.90k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassDeclarationNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportDeclarationNode*>::operator bool() const llvh::Optional<hermes::ESTree::VariableDeclaratorNode*>::operator bool() const Line | Count | Source | 182 | 3.65k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::ArrayPatternNode*>::operator bool() const Line | Count | Source | 182 | 236 | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ObjectPatternNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::AssignmentPatternNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::PropertyNode*>::operator bool() const llvh::Optional<hermes::ESTree::FunctionExpressionNode*>::operator bool() const Line | Count | Source | 182 | 164 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::ArrayExpressionNode*>::operator bool() const Line | Count | Source | 182 | 1.71k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::ObjectExpressionNode*>::operator bool() const Line | Count | Source | 182 | 2 | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::ESTree::ClassExpressionNode*>::operator bool() const Line | Count | Source | 182 | 2 | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::PrivateNameNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassImplementsNode*>::operator bool() const llvh::Optional<hermes::ESTree::ClassBodyNode*>::operator bool() const Line | Count | Source | 182 | 2 | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::UniqueString*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::StringLiteralNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::ImportSpecifierNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::MatchBindingPatternNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::GenericTypeAnnotationNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeParamNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeAnnotationNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::JSXOpeningElementNode*>::operator bool() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::TSTypeReferenceNode*>::operator bool() const llvh::Optional<hermes::parser::TokenKind>::operator bool() const Line | Count | Source | 182 | 210M | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::CompiledRegExp>::operator bool() const Line | Count | Source | 182 | 1.82k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<char16_t>::operator bool() const Line | Count | Source | 182 | 12.8k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom>::operator bool() const Line | Count | Source | 182 | 2.65k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::regex::CharacterClassCodepointRanges>::operator bool() const Line | Count | Source | 182 | 2.22k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::regex::CharacterClass>::operator bool() const Line | Count | Source | 182 | 2.65k | explicit operator bool() const { return Storage.hasVal; } |
llvh::Optional<hermes::SourceErrorManager::LineCoord>::operator bool() const Line | Count | Source | 182 | 16.1k | explicit operator bool() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<llvh::ArrayRef<llvh::StringRef> >::operator bool() const Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::Triple::SubArchType>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::Triple::VendorType>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::Triple::OSType>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::Triple::ObjectFormatType>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::Triple::ArchType>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::Triple::EnvironmentType>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::AArch64::ArchKind>::operator bool() const Unexecuted instantiation: llvh::Optional<llvh::ARM::ISAKind>::operator bool() const |
183 | 15.0M | bool hasValue() const { return Storage.hasVal; }llvh::Optional<hermes::inst::Inst const*>::hasValue() const Line | Count | Source | 183 | 14.6M | bool hasValue() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<unsigned int>::hasValue() const llvh::Optional<unsigned char>::hasValue() const Line | Count | Source | 183 | 120k | bool hasValue() const { return Storage.hasVal; } |
llvh::Optional<int>::hasValue() const Line | Count | Source | 183 | 267k | bool hasValue() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::hasValue() const Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::InterpreterState, unsigned int> >::hasValue() const llvh::Optional<hermes::vm::Handle<hermes::vm::JSError> >::hasValue() const Line | Count | Source | 183 | 41 | bool hasValue() const { return Storage.hasVal; } |
llvh::Optional<hermes::vm::Handle<hermes::vm::Callable> >::hasValue() const Line | Count | Source | 183 | 2 | bool hasValue() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HiddenClass> >::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::vm::Debugger::BreakpointLocation const>::hasValue() const llvh::Optional<bool>::hasValue() const Line | Count | Source | 183 | 196 | bool hasValue() const { return Storage.hasVal; } |
llvh::Optional<hermes::irgen::FunctionContext>::hasValue() const Line | Count | Source | 183 | 147 | bool hasValue() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::parser::JSONSharedValue>::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::parser::JSONValue*>::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocation>::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::Node*>::hasValue() const llvh::Optional<hermes::ESTree::ProgramNode*>::hasValue() const Line | Count | Source | 183 | 196 | bool hasValue() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionExpressionNode*>::hasValue() const Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::hasValue() const Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::hasValue() const llvh::Optional<unsigned long>::hasValue() const Line | Count | Source | 183 | 14 | bool hasValue() const { return Storage.hasVal; } |
Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::hasValue() const |
184 | 0 | const T *operator->() const { return getPointer(); }Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::operator->() const Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::operator->() const Unexecuted instantiation: llvh::Optional<hermes::regex::CharacterClassCodepointRanges>::operator->() const |
185 | 67.0k | T *operator->() { return getPointer(); }Unexecuted instantiation: llvh::Optional<hermes::vm::CompressedPointer>::operator->() Unexecuted instantiation: llvh::Optional<hermes::regex::SyntaxFlags>::operator->() Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HermesValue> >::operator->() Unexecuted instantiation: llvh::Optional<hermes::vm::Runtime::StackFrameInfo>::operator->() Unexecuted instantiation: llvh::Optional<hermes::vm::Debugger::BreakpointLocation const>::operator->() Unexecuted instantiation: llvh::Optional<std::__1::pair<hermes::vm::InterpreterState, unsigned int> >::operator->() Unexecuted instantiation: llvh::Optional<hermes::vm::ScopeRegAndDescriptorChain>::operator->() Unexecuted instantiation: llvh::Optional<hermes::vm::WeakRef<hermes::vm::testhelpers::DummyObject> >::operator->() Unexecuted instantiation: llvh::Optional<std::__1::thread>::operator->() llvh::Optional<hermes::irgen::LReference>::operator->() Line | Count | Source | 185 | 2.54k | T *operator->() { return getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment>::operator->() Unexecuted instantiation: llvh::Optional<hermes::SourceMap::Segment::SourceLocation>::operator->() Unexecuted instantiation: llvh::Optional<hermes::SourceMapTextLocationFIndex>::operator->() Unexecuted instantiation: llvh::Optional<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom>::operator->() llvh::Optional<hermes::SourceErrorManager::LineCoord>::operator->() Line | Count | Source | 185 | 64.4k | T *operator->() { return getPointer(); } |
Unexecuted instantiation: llvh::Optional<llvh::StringRef>::operator->() |
186 | 14.6M | const T &operator*() const LLVM_LVALUE_FUNCTION { return *getPointer(); }llvh::Optional<hermes::inst::Inst const*>::operator*() const & Line | Count | Source | 186 | 14.6M | const T &operator*() const LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<facebook::hermes::debugger::SourceLocation>::operator*() const & Unexecuted instantiation: llvh::Optional<hermes::vm::SamplingProfiler::StackFrame>::operator*() const & llvh::Optional<int>::operator*() const & Line | Count | Source | 186 | 147 | const T &operator*() const LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::regex::CharacterClass>::operator*() const & Line | Count | Source | 186 | 432 | const T &operator*() const LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<llvh::StringRef>::operator*() const & Unexecuted instantiation: llvh::Optional<unsigned long>::operator*() const & |
187 | 13.1M | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); }llvh::Optional<hermes::vm::BigIntPrimitive::UninitializedBigIntPrimitive>::operator*() & Line | Count | Source | 187 | 1.27M | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<char const*>::operator*() & llvh::Optional<std::__1::pair<hermes::vm::NamedPropertyDescriptor*, bool> >::operator*() & Line | Count | Source | 187 | 1.13M | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::vm::SymbolID>::operator*() & Line | Count | Source | 187 | 444k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::HiddenClass> >::operator*() & llvh::Optional<std::__1::pair<hermes::vm::Handle<hermes::vm::HiddenClass>, unsigned int> >::operator*() & Line | Count | Source | 187 | 1.69M | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::vm::IteratorRecord>::operator*() & Line | Count | Source | 187 | 2 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::vm::Handle<hermes::vm::JSError> >::operator*() & Line | Count | Source | 187 | 41 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::vm::StringBuilder>::operator*() & Line | Count | Source | 187 | 459k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::JSArray> >::operator*() & llvh::Optional<std::__1::pair<hermes::vm::JSObject::PropertyUpdateStatus, hermes::vm::PropertyFlags> >::operator*() & Line | Count | Source | 187 | 3.49k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::regex::SyntaxFlags>::operator*() & Line | Count | Source | 187 | 1.82k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<llvh::SmallVector<hermes::OptValue<hermes::vm::RegExpMatchRange>, 4u> >::operator*() & Unexecuted instantiation: llvh::Optional<hermes::vm::Handle<hermes::vm::Callable> >::operator*() & Unexecuted instantiation: llvh::Optional<llvh::StringRef>::operator*() & llvh::Optional<hermes::ESTree::ProgramNode*>::operator*() & Line | Count | Source | 187 | 154 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<llvh::SmallPtrSet<hermes::BasicBlock*, 4u> >::operator*() & Line | Count | Source | 187 | 1.64k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::Node*>::operator*() & Line | Count | Source | 187 | 6.95M | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<int>::operator*() & Line | Count | Source | 187 | 294 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::YieldExpressionNode*>::operator*() & llvh::Optional<hermes::ESTree::FunctionLikeNode*>::operator*() & Line | Count | Source | 187 | 4.05k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::IdentifierNode*>::operator*() & Line | Count | Source | 187 | 7.60k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::BlockStatementNode*>::operator*() & Line | Count | Source | 187 | 277 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::FunctionDeclarationNode*>::operator*() & Line | Count | Source | 187 | 3.89k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassDeclarationNode*>::operator*() & llvh::Optional<hermes::ESTree::VariableDeclarationNode*>::operator*() & Line | Count | Source | 187 | 888 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::ESTree::ArrayPatternNode*>::operator*() & Line | Count | Source | 187 | 236 | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<hermes::ESTree::ObjectPatternNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::AssignmentPatternNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::PropertyNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::PrivateNameNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassImplementsNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::ClassBodyNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::UniqueString*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::StringLiteralNode*>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::SMLoc>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::GenericTypeAnnotationNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeParamNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::FunctionTypeAnnotationNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::JSXOpeningElementNode*>::operator*() & Unexecuted instantiation: llvh::Optional<hermes::ESTree::TSTypeReferenceNode*>::operator*() & llvh::Optional<hermes::parser::TokenKind>::operator*() & Line | Count | Source | 187 | 1.10M | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<unsigned int>::operator*() & Line | Count | Source | 187 | 6.68k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::CompiledRegExp>::operator*() & Line | Count | Source | 187 | 1.82k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<char16_t>::operator*() & Line | Count | Source | 187 | 12.4k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
llvh::Optional<hermes::regex::Parser<hermes::regex::Regex<hermes::regex::UTF16RegexTraits>, char16_t const*>::ClassAtom>::operator*() & Line | Count | Source | 187 | 2.65k | T &operator*() LLVM_LVALUE_FUNCTION { return *getPointer(); } |
Unexecuted instantiation: llvh::Optional<bool>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::ArrayRef<llvh::StringRef> >::operator*() & Unexecuted instantiation: llvh::Optional<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::operator*() & Unexecuted instantiation: llvh::Optional<llvh::Triple::SubArchType>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::Triple::VendorType>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::Triple::OSType>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::Triple::ObjectFormatType>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::Triple::ArchType>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::Triple::EnvironmentType>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::AArch64::ArchKind>::operator*() & Unexecuted instantiation: llvh::Optional<llvh::ARM::ISAKind>::operator*() & |
188 | | |
189 | | template <typename U> |
190 | 14 | constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION { |
191 | 14 | return hasValue() ? getValue() : std::forward<U>(value); |
192 | 14 | } unsigned long llvh::Optional<unsigned long>::getValueOr<unsigned int>(unsigned int&&) const & Line | Count | Source | 190 | 14 | constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION { | 191 | 14 | return hasValue() ? getValue() : std::forward<U>(value); | 192 | 14 | } |
Unexecuted instantiation: unsigned long llvh::Optional<unsigned long>::getValueOr<unsigned long>(unsigned long&&) const & |
193 | | |
194 | | #if LLVM_HAS_RVALUE_REFERENCE_THIS |
195 | 0 | T &&getValue() && { return std::move(*getPointer()); } |
196 | 11.9k | T &&operator*() && { return std::move(*getPointer()); } |
197 | | |
198 | | template <typename U> |
199 | 0 | T getValueOr(U &&value) && { |
200 | 0 | return hasValue() ? std::move(getValue()) : std::forward<U>(value); |
201 | 0 | } |
202 | | #endif |
203 | | }; |
204 | | |
205 | | template <typename T> struct isPodLike<Optional<T>> { |
206 | | // An Optional<T> is pod-like if T is. |
207 | | static const bool value = isPodLike<T>::value; |
208 | | }; |
209 | | |
210 | | template <typename T, typename U> |
211 | | bool operator==(const Optional<T> &X, const Optional<U> &Y) { |
212 | | if (X && Y) |
213 | | return *X == *Y; |
214 | | return X.hasValue() == Y.hasValue(); |
215 | | } |
216 | | |
217 | | template <typename T, typename U> |
218 | | bool operator!=(const Optional<T> &X, const Optional<U> &Y) { |
219 | | return !(X == Y); |
220 | | } |
221 | | |
222 | | template <typename T, typename U> |
223 | | bool operator<(const Optional<T> &X, const Optional<U> &Y) { |
224 | | if (X && Y) |
225 | | return *X < *Y; |
226 | | return X.hasValue() < Y.hasValue(); |
227 | | } |
228 | | |
229 | | template <typename T, typename U> |
230 | | bool operator<=(const Optional<T> &X, const Optional<U> &Y) { |
231 | | return !(Y < X); |
232 | | } |
233 | | |
234 | | template <typename T, typename U> |
235 | | bool operator>(const Optional<T> &X, const Optional<U> &Y) { |
236 | | return Y < X; |
237 | | } |
238 | | |
239 | | template <typename T, typename U> |
240 | | bool operator>=(const Optional<T> &X, const Optional<U> &Y) { |
241 | | return !(X < Y); |
242 | | } |
243 | | |
244 | | template<typename T> |
245 | | bool operator==(const Optional<T> &X, NoneType) { |
246 | | return !X; |
247 | | } |
248 | | |
249 | | template<typename T> |
250 | | bool operator==(NoneType, const Optional<T> &X) { |
251 | | return X == None; |
252 | | } |
253 | | |
254 | | template<typename T> |
255 | | bool operator!=(const Optional<T> &X, NoneType) { |
256 | | return !(X == None); |
257 | | } |
258 | | |
259 | | template<typename T> |
260 | | bool operator!=(NoneType, const Optional<T> &X) { |
261 | | return X != None; |
262 | | } |
263 | | |
264 | | template <typename T> bool operator<(const Optional<T> &X, NoneType) { |
265 | | return false; |
266 | | } |
267 | | |
268 | | template <typename T> bool operator<(NoneType, const Optional<T> &X) { |
269 | | return X.hasValue(); |
270 | | } |
271 | | |
272 | | template <typename T> bool operator<=(const Optional<T> &X, NoneType) { |
273 | | return !(None < X); |
274 | | } |
275 | | |
276 | | template <typename T> bool operator<=(NoneType, const Optional<T> &X) { |
277 | | return !(X < None); |
278 | | } |
279 | | |
280 | | template <typename T> bool operator>(const Optional<T> &X, NoneType) { |
281 | | return None < X; |
282 | | } |
283 | | |
284 | | template <typename T> bool operator>(NoneType, const Optional<T> &X) { |
285 | | return X < None; |
286 | | } |
287 | | |
288 | | template <typename T> bool operator>=(const Optional<T> &X, NoneType) { |
289 | | return None <= X; |
290 | | } |
291 | | |
292 | | template <typename T> bool operator>=(NoneType, const Optional<T> &X) { |
293 | | return X <= None; |
294 | | } |
295 | | |
296 | 147 | template <typename T> bool operator==(const Optional<T> &X, const T &Y) { |
297 | 147 | return X && *X == Y; |
298 | 147 | } |
299 | | |
300 | 251k | template <typename T> bool operator==(const T &X, const Optional<T> &Y) { |
301 | 251k | return Y && X == *Y; |
302 | 251k | } |
303 | | |
304 | | template <typename T> bool operator!=(const Optional<T> &X, const T &Y) { |
305 | | return !(X == Y); |
306 | | } |
307 | | |
308 | | template <typename T> bool operator!=(const T &X, const Optional<T> &Y) { |
309 | | return !(X == Y); |
310 | | } |
311 | | |
312 | | template <typename T> bool operator<(const Optional<T> &X, const T &Y) { |
313 | | return !X || *X < Y; |
314 | | } |
315 | | |
316 | | template <typename T> bool operator<(const T &X, const Optional<T> &Y) { |
317 | | return Y && X < *Y; |
318 | | } |
319 | | |
320 | | template <typename T> bool operator<=(const Optional<T> &X, const T &Y) { |
321 | | return !(Y < X); |
322 | | } |
323 | | |
324 | | template <typename T> bool operator<=(const T &X, const Optional<T> &Y) { |
325 | | return !(Y < X); |
326 | | } |
327 | | |
328 | | template <typename T> bool operator>(const Optional<T> &X, const T &Y) { |
329 | | return Y < X; |
330 | | } |
331 | | |
332 | | template <typename T> bool operator>(const T &X, const Optional<T> &Y) { |
333 | | return Y < X; |
334 | | } |
335 | | |
336 | | template <typename T> bool operator>=(const Optional<T> &X, const T &Y) { |
337 | | return !(X < Y); |
338 | | } |
339 | | |
340 | | template <typename T> bool operator>=(const T &X, const Optional<T> &Y) { |
341 | | return !(X < Y); |
342 | | } |
343 | | |
344 | | } // end namespace llvh |
345 | | |
346 | | #endif // LLVM_ADT_OPTIONAL_H |