svf-lib 1.0.2696 → 1.0.2698
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-linux-aarch64/bin/ae +0 -0
- package/SVF-linux-aarch64/bin/mta +0 -0
- package/SVF-linux-aarch64/bin/svf-ex +0 -0
- package/SVF-linux-aarch64/include/Util/SVFUtil.h +0 -56
- package/SVF-linux-aarch64/lib/libSvfCore.so.3.4 +0 -0
- package/SVF-linux-aarch64/lib/libSvfLLVM.so.3.4 +0 -0
- package/package.json +1 -1
package/SVF-linux-aarch64/bin/ae
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -158,13 +158,6 @@ typedef struct equalNodeBS
|
|
|
158
158
|
}
|
|
159
159
|
} equalNodeBS;
|
|
160
160
|
|
|
161
|
-
inline NodeBS ptsToNodeBS(const PointsTo &pts)
|
|
162
|
-
{
|
|
163
|
-
NodeBS nbs;
|
|
164
|
-
for (const NodeID o : pts) nbs.set(o);
|
|
165
|
-
return nbs;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
161
|
typedef OrderedSet<PointsTo, equalPointsTo> PointsToList;
|
|
169
162
|
void dumpPointsToList(const PointsToList& ptl);
|
|
170
163
|
|
|
@@ -422,55 +415,6 @@ move(T &&t) noexcept
|
|
|
422
415
|
return std::move(t);
|
|
423
416
|
}
|
|
424
417
|
|
|
425
|
-
/// void_t is not available until C++17. We define it here for C++11/14.
|
|
426
|
-
template <typename... Ts> struct make_void
|
|
427
|
-
{
|
|
428
|
-
typedef void type;
|
|
429
|
-
};
|
|
430
|
-
template <typename... Ts> using void_t = typename make_void<Ts...>::type;
|
|
431
|
-
|
|
432
|
-
/// @brief Type trait that checks if a type is iterable
|
|
433
|
-
/// (can be applied on a range-based for loop)
|
|
434
|
-
///@{
|
|
435
|
-
template <typename T, typename = void> struct is_iterable : std::false_type {};
|
|
436
|
-
template <typename T>
|
|
437
|
-
struct is_iterable<T, void_t<decltype(std::begin(std::declval<T&>()) !=
|
|
438
|
-
std::end(std::declval<T&>()))>>
|
|
439
|
-
: std::true_type {};
|
|
440
|
-
template <typename T> constexpr bool is_iterable_v = is_iterable<T>::value;
|
|
441
|
-
///@}
|
|
442
|
-
|
|
443
|
-
/// @brief Type trait to check if a type is a map or unordered_map.
|
|
444
|
-
///@{
|
|
445
|
-
template <typename T> struct is_map : std::false_type {};
|
|
446
|
-
template <typename... Ts> struct is_map<std::map<Ts...>> : std::true_type {};
|
|
447
|
-
template <typename... Ts>
|
|
448
|
-
struct is_map<std::unordered_map<Ts...>> : std::true_type {};
|
|
449
|
-
template <typename... Ts> constexpr bool is_map_v = is_map<Ts...>::value;
|
|
450
|
-
///@}
|
|
451
|
-
|
|
452
|
-
/// @brief Type trait to check if a type is a set or unordered_set.
|
|
453
|
-
///@{
|
|
454
|
-
template <typename T> struct is_set : std::false_type {};
|
|
455
|
-
template <typename... Ts> struct is_set<std::set<Ts...>> : std::true_type {};
|
|
456
|
-
template <typename... Ts>
|
|
457
|
-
struct is_set<std::unordered_set<Ts...>> : std::true_type {};
|
|
458
|
-
template <typename... Ts> constexpr bool is_set_v = is_set<Ts...>::value;
|
|
459
|
-
///@}
|
|
460
|
-
|
|
461
|
-
/// @brief Type trait to check if a type is vector or list.
|
|
462
|
-
template <typename T> struct is_sequence_container : std::false_type {};
|
|
463
|
-
template <typename... Ts>
|
|
464
|
-
struct is_sequence_container<std::vector<Ts...>> : std::true_type {};
|
|
465
|
-
template <typename... Ts>
|
|
466
|
-
struct is_sequence_container<std::deque<Ts...>> : std::true_type {};
|
|
467
|
-
template <typename... Ts>
|
|
468
|
-
struct is_sequence_container<std::list<Ts...>> : std::true_type {};
|
|
469
|
-
template <typename... Ts>
|
|
470
|
-
constexpr bool is_sequence_container_v = is_sequence_container<Ts...>::value;
|
|
471
|
-
///@}
|
|
472
|
-
|
|
473
|
-
|
|
474
418
|
} // End namespace SVFUtil
|
|
475
419
|
|
|
476
420
|
} // End namespace SVF
|
|
Binary file
|
|
Binary file
|