ladybird/AK
Lenny Maiorani e6f907a155 AK: Simplify constructors and conversions from nullptr_t
Problem:
- Many constructors are defined as `{}` rather than using the ` =
  default` compiler-provided constructor.
- Some types provide an implicit conversion operator from `nullptr_t`
  instead of requiring the caller to default construct. This violates
  the C++ Core Guidelines suggestion to declare single-argument
  constructors explicit
  (https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c46-by-default-declare-single-argument-constructors-explicit).

Solution:
- Change default constructors to use the compiler-provided default
  constructor.
- Remove implicit conversion operators from `nullptr_t` and change
  usage to enforce type consistency without conversion.
2021-01-12 09:11:45 +01:00
..
Tests AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
AllOf.h AllOf: Common iterator types 2020-12-20 21:13:10 +01:00
Array.h AK: Remove redundant compare() functions. 2021-01-02 01:37:22 +01:00
Assertions.h
Atomic.h AK: Add default memory order as template argument for Atomic<T> 2021-01-04 19:13:52 +01:00
Badge.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Base64.cpp AK: Fix base64 decoding '/' 2020-11-22 16:07:00 +01:00
Base64.h
BinarySearch.h AK: Deal with unsigned integers in binary search. 2021-01-01 22:23:13 +01:00
Bitmap.h
BitStream.h
Buffered.h
ByteBuffer.cpp
ByteBuffer.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Checked.h
CircularDeque.h
CircularDuplexStream.h AK: Remove bogus test case for CircularDuplexStream. 2020-12-19 23:29:40 +01:00
CircularQueue.h
CMakeLists.txt CMake: Decouple cmake utility functions from top-level CMakeLists.txt 2020-12-24 11:02:04 +01:00
Concepts.h AK: Pull Is{Integral,FloatingPoint} into the global namespace 2020-12-05 23:52:17 +01:00
Demangle.h
DistinctNumeric.h
DoublyLinkedList.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Endian.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
FileStream.h AK+ProtocolServer: Properly close download stream fd's 2020-12-30 20:37:41 +01:00
Find.h AK: Find a value in any container offering iterators 2021-01-11 19:45:05 +01:00
FlyString.cpp AK: Generalize AK::String::to_int() for more types 2020-12-21 00:15:44 +01:00
FlyString.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Format.cpp AK: Add Formatter<FormatString> as helper class. 2021-01-09 21:11:09 +01:00
Format.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Forward.h AK: Add default memory order as template argument for Atomic<T> 2021-01-04 19:13:52 +01:00
Function.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
GenericLexer.cpp
GenericLexer.h
HashFunctions.h
HashMap.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
HashTable.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Hex.cpp AK: Add {encode,decode}_hex similar to {encode,decode}_base64 2020-12-13 11:00:20 +01:00
Hex.h AK: Add {encode,decode}_hex similar to {encode,decode}_base64 2020-12-13 11:00:20 +01:00
IDAllocator.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
InlineLinkedList.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
IntrusiveList.h AK: Add IntrusiveList::take_last() 2020-11-24 16:37:55 +01:00
IPv4Address.h Everywhere: Re-format with clang-format-11 2020-12-31 21:51:00 +01:00
IterationDecision.h
Iterator.h
JsonArray.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
JsonArraySerializer.h
JsonObject.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
JsonObjectSerializer.h
JsonParser.cpp AK: Make JsonParser::parse_number properly parse >32bit ints 2020-12-21 00:15:44 +01:00
JsonParser.h
JsonPath.cpp
JsonPath.h
JsonValue.cpp
JsonValue.h AK+Format: Remove TypeErasedFormatParams& from format function. 2020-12-30 20:33:53 +01:00
kmalloc.h
kstdio.h LibC: Enable compiler warnings for printf format strings 2020-12-26 10:05:50 +01:00
LexicalPath.cpp
LexicalPath.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
LogStream.cpp
LogStream.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
MACAddress.h Everywhere: Re-format with clang-format-11 2020-12-31 21:51:00 +01:00
MappedFile.cpp AK: Make MappedFile heap-allocated and ref-counted 2021-01-10 16:49:13 +01:00
MappedFile.h AK: Make MappedFile heap-allocated and ref-counted 2021-01-10 16:49:13 +01:00
MemMem.h AK: Implement memmem() for iterator haystacks 2020-12-08 23:34:38 +01:00
Memory.h
MemoryStream.h AK: Fix offset calculation error in DuplexMemoryStream::write. 2020-12-09 21:17:24 +01:00
NeverDestroyed.h
Noncopyable.h
NonnullOwnPtr.h AK+Format: Remove TypeErasedFormatParams& from format function. 2020-12-30 20:33:53 +01:00
NonnullOwnPtrVector.h AK: Forward declare Nonnull{Own,Ref}PtrVector 2020-12-08 23:34:38 +01:00
NonnullPtrVector.h AK: Use ALWAYS_INLINE all over NonnullPtrVector 2020-11-23 14:08:50 +01:00
NonnullRefPtr.h AK+Format: Remove TypeErasedFormatParams& from format function. 2020-12-30 20:33:53 +01:00
NonnullRefPtrVector.h AK: Forward declare Nonnull{Own,Ref}PtrVector 2020-12-08 23:34:38 +01:00
NumberFormat.h
NumericLimits.h
Optional.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
OSError.h AK: Add AK::OSError, a wrapper for errno codes 2021-01-10 16:46:13 +01:00
OwnPtr.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Platform.h AK: Add CLOCK_*_COARSE aliases for darwin and BSD variants 2020-12-28 19:35:32 +01:00
PrintfImplementation.h AK: Remove custom %w format string specifier 2020-12-25 17:05:05 +01:00
Queue.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
QuickSort.h AK: Ensure dual_pivot_quick_sort does not copy the pivots 2020-12-10 11:02:02 +01:00
Random.h Everywhere: Switch from (void) to [[maybe_unused]] (#4473) 2020-12-21 00:09:48 +01:00
RefCounted.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
RefPtr.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Result.h AK: Add release_value() and release_error() to AK::Result 2021-01-09 19:57:50 +01:00
ScopedValueRollback.h
ScopeGuard.h
SharedBuffer.cpp AK: Enable AK::SharedBuffer for all platforms 2020-12-28 19:35:32 +01:00
SharedBuffer.h AK: Enable AK::SharedBuffer for all platforms 2020-12-28 19:35:32 +01:00
SIMD.h AK: Add header for SIMD vectorized types 2020-12-08 09:39:43 +01:00
Singleton.h AK: Add static Singleton::get function to allow destructible globals 2021-01-09 21:12:31 +01:00
SinglyLinkedList.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
SinglyLinkedListWithCount.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
SourceGenerator.h LibIPC: Prepend each message with its size 2020-11-23 18:37:40 +01:00
Span.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
StackInfo.cpp AK: Use MacOS pthread_get_stacksize_np to get stack size for StackInfo 2020-12-30 11:28:50 +01:00
StackInfo.h
StdLibExtras.h AK: Add tests for type traits and IndexSequence 2020-12-30 11:32:20 +01:00
Stream.h AK: Replace some SFINAE with requires clauses, clean up existing ones 2020-12-30 13:28:49 +01:00
String.cpp AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
String.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
StringBuilder.cpp AK: Add some inline capacity to StringBuilder 2020-11-24 22:06:51 +01:00
StringBuilder.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
StringImpl.cpp AK: Don't return empty StringImpl from create() when char* starts with \0 2020-11-25 20:17:25 +01:00
StringImpl.h AK+Format: Remove TypeErasedFormatParams& from format function. 2020-12-30 20:33:53 +01:00
StringUtils.cpp AK: Specialise convert_to_uint<T> and to_uint<T> for 'long' variants 2021-01-11 21:09:36 +01:00
StringUtils.h AK: Add String{,View}::is_whitespace() 2021-01-03 10:47:29 +01:00
StringView.cpp AK: Specialise convert_to_uint<T> and to_uint<T> for 'long' variants 2021-01-11 21:09:36 +01:00
StringView.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
TemporaryChange.h
TestSuite.h
Time.cpp
Time.h AK: Add CLOCK_*_COARSE aliases for darwin and BSD variants 2020-12-28 19:35:32 +01:00
Traits.h AK: Find a value in any container offering iterators 2021-01-11 19:45:05 +01:00
Trie.h AK: Replace some SFINAE with requires clauses, clean up existing ones 2020-12-30 13:28:49 +01:00
TypeCasts.h AK+LibGUI+LibWeb: Remove AK::TypeTraits in favor of RTTI-based helpers 2021-01-01 15:33:30 +01:00
TypedTransfer.h
TypeList.h AK: Add missing 'template' keywords in TypeList 2020-12-31 16:16:07 +01:00
Types.h AK: Add default memory order as template argument for Atomic<T> 2021-01-04 19:13:52 +01:00
URL.cpp AK::URL: Fix setting the port number in the case it was the last element of the URL 2020-12-12 20:09:42 +01:00
URL.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
URLParser.cpp AK: Fix urlencode() with high byte values 2020-12-12 23:50:23 +01:00
URLParser.h
Userspace.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Utf8View.cpp AK: Use size_t in methods of Utf8View. 2021-01-02 01:37:22 +01:00
Utf8View.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Utf32View.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
UUID.cpp AK: Add the UUID container 2021-01-01 22:59:48 +01:00
UUID.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
Vector.h Vector: Implement find, find_if, find_first_matching in terms of AK::find* 2021-01-11 19:45:05 +01:00
Weakable.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00
WeakPtr.h AK: Simplify constructors and conversions from nullptr_t 2021-01-12 09:11:45 +01:00