abseil_cpp
absl
types
bad_any_cast.cc
Go to the documentation of this file.
1
// Copyright 2017 The Abseil Authors.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// https://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
15
#include "
absl/types/bad_any_cast.h
"
16
17
#ifndef ABSL_HAVE_STD_ANY
18
19
#include <cstdlib>
20
21
#include "
absl/base/config.h
"
22
#include "
absl/base/internal/raw_logging.h
"
23
24
namespace
absl
{
25
26
bad_any_cast::~bad_any_cast
() =
default
;
27
28
const
char
*
bad_any_cast::what
() const noexcept {
return
"Bad any cast"
; }
29
30
namespace
any_internal {
31
32
void
ThrowBadAnyCast
() {
33
#ifdef ABSL_HAVE_EXCEPTIONS
34
throw
bad_any_cast
();
35
#else
36
ABSL_RAW_LOG
(FATAL,
"Bad any cast"
);
37
std::abort();
38
#endif
39
}
40
41
}
// namespace any_internal
42
}
// namespace absl
43
44
#endif // ABSL_HAVE_STD_ANY
absl::bad_any_cast::what
const char * what() const noexcept override
Definition:
bad_any_cast.cc:28
raw_logging.h
ABSL_RAW_LOG
#define ABSL_RAW_LOG(severity,...)
Definition:
raw_logging.h:42
bad_any_cast.h
absl
Definition:
algorithm.h:29
absl::any_internal::ThrowBadAnyCast
void ThrowBadAnyCast()
Definition:
bad_any_cast.cc:32
absl::bad_any_cast::~bad_any_cast
~bad_any_cast() override
config.h
absl::bad_any_cast
Definition:
bad_any_cast.h:56
abseil_cpp
Author(s):
autogenerated on Mon Feb 28 2022 21:31:17