OR-Tools  9.3
base/status_macros.h File Reference

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(...)    STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_(__VA_ARGS__)
 
#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_(...)    STATUS_MACROS_IMPL_VAN##__VA_ARGS__
 
#define ISH(...)   ISH __VA_ARGS__
 
#define STATUS_MACROS_IMPL_VANISH
 
#define STATUS_MACROS_IMPL_UNPARENTHESIS(...)    STATUS_MACROS_IMPL_UNPARENTHESIS_INNER(ISH __VA_ARGS__)
 
#define STATUS_MACROS_IMPL_CONCAT_INNER_(x, y)   x##y
 
#define STATUS_MACROS_IMPL_CONCAT_(x, y)   STATUS_MACROS_IMPL_CONCAT_INNER_(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 base/status_macros.h.

◆ ISH

#define ISH (   ...)    ISH __VA_ARGS__

Definition at line 60 of file base/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 base/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 base/status_macros.h.

◆ STATUS_MACROS_IMPL_CONCAT_

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

Definition at line 70 of file base/status_macros.h.

◆ STATUS_MACROS_IMPL_CONCAT_INNER_

#define STATUS_MACROS_IMPL_CONCAT_INNER_ (   x,
 
)    x##y

Definition at line 69 of file base/status_macros.h.

◆ STATUS_MACROS_IMPL_UNPARENTHESIS

#define STATUS_MACROS_IMPL_UNPARENTHESIS (   ...)     STATUS_MACROS_IMPL_UNPARENTHESIS_INNER(ISH __VA_ARGS__)

Definition at line 65 of file base/status_macros.h.

◆ STATUS_MACROS_IMPL_UNPARENTHESIS_INNER

#define STATUS_MACROS_IMPL_UNPARENTHESIS_INNER (   ...)     STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_(__VA_ARGS__)

Definition at line 56 of file base/status_macros.h.

◆ STATUS_MACROS_IMPL_UNPARENTHESIS_INNER_

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

Definition at line 58 of file base/status_macros.h.

◆ STATUS_MACROS_IMPL_VANISH

#define STATUS_MACROS_IMPL_VANISH

Definition at line 61 of file base/status_macros.h.