Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
status_macros.h File Reference
#include "absl/status/status.h"
#include "absl/status/statusor.h"
#include "ortools/base/status_builder.h"

Go to the source code of this file.

Macros

#define RETURN_IF_ERROR(expr)
#define ASSIGN_OR_RETURN(lhs, rexpr)
#define STATUS_MACROS_IMPL_ASSIGN_OR_RETURN_(statusor, lhs, rexpr)
#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER(...)
#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_(...)
#define ISH(...)
#define STATUS_MACROS_IMPL_VANISH
#define STATUS_MACROS_IMPL_UNPARENTHESIS(...)
#define STATUS_MACROS_IMPL_CONCAT_INNER_(x, y)
#define STATUS_MACROS_IMPL_CONCAT_(x, y)

Macro Definition Documentation

◆ ASSIGN_OR_RETURN

#define ASSIGN_OR_RETURN ( lhs,
rexpr )
Value:
STATUS_MACROS_IMPL_CONCAT_(_status_or_value, __COUNTER__), lhs, rexpr);
#define STATUS_MACROS_IMPL_CONCAT_(x, y)
#define STATUS_MACROS_IMPL_ASSIGN_OR_RETURN_(statusor, lhs, rexpr)

Definition at line 46 of file status_macros.h.

◆ ISH

#define ISH ( ...)
Value:
ISH __VA_ARGS__
#define ISH(...)

Definition at line 60 of file status_macros.h.

◆ RETURN_IF_ERROR

#define RETURN_IF_ERROR ( expr)
Value:
switch (0) \
case 0: \
default: \
if (const ::absl::Status status_macro_internal_adaptor = (expr); \
status_macro_internal_adaptor.ok()) { \
} else /* NOLINT */ \
return ::util::StatusBuilder(status_macro_internal_adaptor)

Definition at line 27 of file status_macros.h.

◆ STATUS_MACROS_IMPL_ASSIGN_OR_RETURN_

#define STATUS_MACROS_IMPL_ASSIGN_OR_RETURN_ ( statusor,
lhs,
rexpr )
Value:
auto statusor = (rexpr); \
RETURN_IF_ERROR(statusor.status()); \
STATUS_MACROS_IMPL_UNPARENTHESIS(lhs) = std::move(statusor).value()

Definition at line 50 of file status_macros.h.

◆ STATUS_MACROS_IMPL_CONCAT_

#define STATUS_MACROS_IMPL_CONCAT_ ( x,
y )
Value:
#define STATUS_MACROS_IMPL_CONCAT_INNER_(x, y)

Definition at line 70 of file status_macros.h.

◆ STATUS_MACROS_IMPL_CONCAT_INNER_

#define STATUS_MACROS_IMPL_CONCAT_INNER_ ( x,
y )
Value:
x##y

Definition at line 69 of file status_macros.h.

◆ STATUS_MACROS_IMPL_UNPARENTHESIS

#define STATUS_MACROS_IMPL_UNPARENTHESIS ( ...)
Value:
#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER(...)

Definition at line 65 of file status_macros.h.

◆ STATUS_MACROS_IMPL_UNPARENTHESIS_INNER

#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER ( ...)
Value:
#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_(...)

Definition at line 56 of file status_macros.h.

◆ STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_

#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_ ( ...)
Value:
STATUS_MACROS_IMPL_VAN##__VA_ARGS__

Definition at line 58 of file status_macros.h.

◆ STATUS_MACROS_IMPL_VANISH

#define STATUS_MACROS_IMPL_VANISH

Definition at line 61 of file status_macros.h.