commit
						94ce52d46c
					
				
					 8 changed files with 15 additions and 15 deletions
				
			
		|  | @ -1578,7 +1578,7 @@ decay_t<T> c_inner_product(const Sequence1& factors1, const Sequence2& factors2, | |||
| } | ||||
| 
 | ||||
| // Overload of c_inner_product() for using binary operations other than
 | ||||
| // `operator+` (for computing the accumlation) and `operator*` (for computing
 | ||||
| // `operator+` (for computing the accumulation) and `operator*` (for computing
 | ||||
| // the product between the two container's element pair).
 | ||||
| template <typename Sequence1, typename Sequence2, typename T, | ||||
|           typename BinaryOp1, typename BinaryOp2> | ||||
|  |  | |||
|  | @ -123,7 +123,7 @@ inline To implicit_cast(typename absl::internal::identity_t<To> to) { | |||
| //
 | ||||
| // Such casting results in type punning: holding an object in memory of one type
 | ||||
| // and reading its bits back using a different type. A `bit_cast()` avoids this
 | ||||
| // issue by implementating its casts using `memcpy()`, which avoids introducing
 | ||||
| // issue by implementing its casts using `memcpy()`, which avoids introducing
 | ||||
| // this undefined behavior.
 | ||||
| template <typename Dest, typename Source> | ||||
| inline Dest bit_cast(const Source& source) { | ||||
|  |  | |||
|  | @ -299,7 +299,7 @@ | |||
| // family of functions as standardized in POSIX.1-2001.
 | ||||
| //
 | ||||
| // Note: While Apple provides <semaphore.h> for both iOS and macOS, it is
 | ||||
| // explicity deprecated and will cause build failures if enabled for those
 | ||||
| // explicitly deprecated and will cause build failures if enabled for those
 | ||||
| // platforms.  We side-step the issue by not defining it here for Apple
 | ||||
| // platforms.
 | ||||
| #ifdef ABSL_HAVE_SEMAPHORE_H | ||||
|  |  | |||
|  | @ -549,7 +549,7 @@ class InlinedVector { | |||
|   } | ||||
| 
 | ||||
|   // Overload of InlinedVector::erase() for erasing all elements in the
 | ||||
|   // iteraror range [first, last) in the inlined vector, returning an iterator
 | ||||
|   // iterator range [first, last) in the inlined vector, returning an iterator
 | ||||
|   // pointing to the first element following the range erased, or the
 | ||||
|   // container's end if range included the container's last element.
 | ||||
|   iterator erase(const_iterator first, const_iterator last); | ||||
|  |  | |||
|  | @ -73,7 +73,7 @@ struct default_alignment_of_aligned_storage<Len, | |||
| // `std::void_t` metafunction.
 | ||||
| //
 | ||||
| // NOTE: `absl::void_t` does not use the standard-specified implementation so
 | ||||
| // that it can remain compatibile with gcc < 5.1. This can introduce slightly
 | ||||
| // that it can remain compatible with gcc < 5.1. This can introduce slightly
 | ||||
| // different behavior, such as when ordering partial specializations.
 | ||||
| template <typename... Ts> | ||||
| using void_t = typename type_traits_internal::VoidTImpl<Ts...>::type; | ||||
|  | @ -194,7 +194,7 @@ struct is_trivially_destructible | |||
| // LWG issue 2116: http://cplusplus.github.io/LWG/lwg-active.html#2116.
 | ||||
| //
 | ||||
| // "T obj();" need to be well-formed and not call any nontrivial operation.
 | ||||
| // Nontrivally destructible types will cause the expression to be nontrivial.
 | ||||
| // Nontrivially destructible types will cause the expression to be nontrivial.
 | ||||
| template <typename T> | ||||
| struct is_trivially_default_constructible | ||||
|     : std::integral_constant<bool, __has_trivial_constructor(T) && | ||||
|  | @ -225,7 +225,7 @@ struct is_trivially_default_constructible | |||
| // implementation.
 | ||||
| //
 | ||||
| // NOTE: `T obj(declval<const T&>());` needs to be well-formed and not call any
 | ||||
| // nontrivial operation.  Nontrivally destructible types will cause the
 | ||||
| // nontrivial operation.  Nontrivially destructible types will cause the
 | ||||
| // expression to be nontrivial.
 | ||||
| template <typename T> | ||||
| struct is_trivially_copy_constructible | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ | |||
| // `ascii_iscntrl()`, `ascii_isdigit()`, `ascii_isgraph()`, `ascii_islower()`,
 | ||||
| // `ascii_isprint()`, `ascii_ispunct()`, `ascii_isspace()`, `ascii_isupper()`,
 | ||||
| // `ascii_isxdigit()`
 | ||||
| //   Analagous to the <ctype.h> functions with similar names, these
 | ||||
| //   Analogous to the <ctype.h> functions with similar names, these
 | ||||
| //   functions take an unsigned char and return a bool, based on whether the
 | ||||
| //   character matches the condition specified.
 | ||||
| //
 | ||||
|  | @ -42,7 +42,7 @@ | |||
| //   functions return `false`.
 | ||||
| //
 | ||||
| // `ascii_tolower()`, `ascii_toupper()`
 | ||||
| //   Analagous to the <ctype.h> functions with similar names, these functions
 | ||||
| //   Analogous to the <ctype.h> functions with similar names, these functions
 | ||||
| //   take an unsigned char and return a char.
 | ||||
| //
 | ||||
| //   If the input character is not an ASCII {lower,upper}-case letter (including
 | ||||
|  |  | |||
|  | @ -193,13 +193,13 @@ ValueType* any_cast(any* operand) noexcept; | |||
| //   auto c = absl::any(std::move(my_foo));  // Error, not copy-constructable
 | ||||
| //
 | ||||
| // Note that `absl::any` makes use of decayed types (`absl::decay_t` in this
 | ||||
| // context) to remove const-volative qualifiers (known as "cv qualifiers"),
 | ||||
| // context) to remove const-volatile qualifiers (known as "cv qualifiers"),
 | ||||
| // decay functions to function pointers, etc. We essentially "decay" a given
 | ||||
| // type into its essential type.
 | ||||
| //
 | ||||
| // `absl::any` makes use of decayed types when determing the basic type `T` of
 | ||||
| // `absl::any` makes use of decayed types when determining the basic type `T` of
 | ||||
| // the value to store in the any's contained object. In the documentation below,
 | ||||
| // we explcitly denote this by using the phrase "a decayed type of `T`".
 | ||||
| // we explicitly denote this by using the phrase "a decayed type of `T`".
 | ||||
| //
 | ||||
| // Example:
 | ||||
| //
 | ||||
|  | @ -324,7 +324,7 @@ class any { | |||
|   // Overload of `any::emplace()` to emplace a value within an `absl::any`
 | ||||
|   // object by calling `any::reset()`, initializing the contained value as if
 | ||||
|   // direct-non-list-initializing an object of type `VT` with the arguments
 | ||||
|   // `initilizer_list, std::forward<Args>(args)...`, and returning a reference
 | ||||
|   // `initializer_list, std::forward<Args>(args)...`, and returning a reference
 | ||||
|   // to the new contained value.
 | ||||
|   //
 | ||||
|   // Note: If an exception is thrown during the call to `VT`'s constructor,
 | ||||
|  | @ -356,7 +356,7 @@ class any { | |||
|   // Swaps the passed value and the value of this `absl::any` object.
 | ||||
|   void swap(any& other) noexcept { obj_.swap(other.obj_); } | ||||
| 
 | ||||
|   // Observors
 | ||||
|   // Observers
 | ||||
| 
 | ||||
|   // any::has_value()
 | ||||
|   //
 | ||||
|  |  | |||
|  | @ -224,7 +224,7 @@ using EnableIfConvertibleToSpanConst = | |||
| // point to remains alive, must also ensure that such memory does not get
 | ||||
| // reallocated. Therefore, to avoid undefined behavior, containers with
 | ||||
| // associated span views should not invoke operations that may reallocate memory
 | ||||
| // (such as resizing) or invalidate iterarors into the container.
 | ||||
| // (such as resizing) or invalidate iterators into the container.
 | ||||
| //
 | ||||
| // One common use for a `Span` is when passing arguments to a routine that can
 | ||||
| // accept a variety of array types (e.g. a `std::vector`, `absl::InlinedVector`,
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue