AWS SDK for C++
AWS SDK for C++
Loading...
Searching...
No Matches
Macros
ErrorMacros.h File Reference
#include <aws/core/Core_EXPORTS.h>
#include <aws/core/utils/logging/LogLevel.h>
#include <aws/core/utils/logging/AWSLogging.h>
#include <aws/core/utils/logging/LogMacros.h>

Go to the source code of this file.

Macros

#define AWS_OPERATION_CHECK_PTR(PTR, OPERATION, ERROR_TYPE, ERROR)
 
#define AWS_CHECK(LOG_TAG, CONDITION, ERROR_MESSAGE, RETURN)
 
#define AWS_CHECK_PTR(LOG_TAG, PTR)
 
#define AWS_OPERATION_CHECK_SUCCESS(OUTCOME, OPERATION, ERROR_TYPE, ERROR, ERROR_MESSAGE)
 
#define AWS_OPERATION_CHECK_PARAMETER_PRESENT(REQUEST, FIELD, OPERATION, CLIENT_NAMESPACE)
 

Macro Definition Documentation

◆ AWS_CHECK

#define AWS_CHECK (   LOG_TAG,
  CONDITION,
  ERROR_MESSAGE,
  RETURN 
)
Value:
do { \
if (!(CONDITION)) \
{ \
AWS_LOGSTREAM_ERROR(LOG_TAG, ERROR_MESSAGE); \
return RETURN; \
} \
} while (0)

Definition at line 23 of file ErrorMacros.h.

◆ AWS_CHECK_PTR

#define AWS_CHECK_PTR (   LOG_TAG,
  PTR 
)
Value:
do { \
if (PTR == nullptr) \
{ \
AWS_LOGSTREAM_FATAL(LOG_TAG, "Unexpected nullptr: " #PTR); \
return; \
} \
} while (0)

Definition at line 32 of file ErrorMacros.h.

◆ AWS_OPERATION_CHECK_PARAMETER_PRESENT

#define AWS_OPERATION_CHECK_PARAMETER_PRESENT (   REQUEST,
  FIELD,
  OPERATION,
  CLIENT_NAMESPACE 
)
Value:
do { \
if (!REQUEST##.##FIELD##HasBeenSet()) \
{ \
AWS_LOGSTREAM_ERROR(#OPERATION, "Required field: "#FIELD" is not set"); \
return OPERATION##Outcome(Aws::Client::AWSError<CLIENT_NAMESPACE##Errors>(CLIENT_NAMESPACE##Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field ["#FIELD"]", false)); \
} \
} while (0)

Definition at line 50 of file ErrorMacros.h.

◆ AWS_OPERATION_CHECK_PTR

#define AWS_OPERATION_CHECK_PTR (   PTR,
  OPERATION,
  ERROR_TYPE,
  ERROR 
)
Value:
do { \
if (PTR == nullptr) \
{ \
AWS_LOGSTREAM_FATAL(#OPERATION, "Unexpected nullptr: " #PTR); \
return OPERATION##Outcome(Aws::Client::AWSError<ERROR_TYPE>(ERROR, #ERROR, "Unexpected nullptr: " #PTR, false)); \
} \
} while (0)

Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0.

Definition at line 14 of file ErrorMacros.h.

◆ AWS_OPERATION_CHECK_SUCCESS

#define AWS_OPERATION_CHECK_SUCCESS (   OUTCOME,
  OPERATION,
  ERROR_TYPE,
  ERROR,
  ERROR_MESSAGE 
)
Value:
do { \
if (!OUTCOME.IsSuccess()) \
{ \
AWS_LOGSTREAM_ERROR(#OPERATION, ERROR_MESSAGE); \
return OPERATION##Outcome(Aws::Client::AWSError<ERROR_TYPE>(ERROR, #ERROR, ERROR_MESSAGE, false)); \
} \
} while (0)

Definition at line 41 of file ErrorMacros.h.