| Index: mojo/public/cpp/bindings/lib/validation_errors.h
|
| diff --git a/mojo/public/cpp/bindings/lib/validation_errors.h b/mojo/public/cpp/bindings/lib/validation_errors.h
|
| deleted file mode 100644
|
| index 2abb1b7545620b73f55d6f6aa10e6ea19f74a3cf..0000000000000000000000000000000000000000
|
| --- a/mojo/public/cpp/bindings/lib/validation_errors.h
|
| +++ /dev/null
|
| @@ -1,114 +0,0 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef MOJO_PUBLIC_CPP_BINDINGS_LIB_VALIDATION_ERRORS_H_
|
| -#define MOJO_PUBLIC_CPP_BINDINGS_LIB_VALIDATION_ERRORS_H_
|
| -
|
| -#include "mojo/public/cpp/system/macros.h"
|
| -
|
| -namespace mojo {
|
| -namespace internal {
|
| -
|
| -enum ValidationError {
|
| - // There is no validation error.
|
| - VALIDATION_ERROR_NONE,
|
| - // An object (struct or array) is not 8-byte aligned.
|
| - VALIDATION_ERROR_MISALIGNED_OBJECT,
|
| - // An object is not contained inside the message data, or it overlaps other
|
| - // objects.
|
| - VALIDATION_ERROR_ILLEGAL_MEMORY_RANGE,
|
| - // A struct header doesn't make sense, for example:
|
| - // - |num_bytes| is smaller than the size of the oldest version that we
|
| - // support.
|
| - // - |num_fields| is smaller than the field number of the oldest version that
|
| - // we support.
|
| - // - |num_bytes| and |num_fields| don't match.
|
| - VALIDATION_ERROR_UNEXPECTED_STRUCT_HEADER,
|
| - // An array header doesn't make sense, for example:
|
| - // - |num_bytes| is smaller than the size of the header plus the size required
|
| - // to store |num_elements| elements.
|
| - // - For fixed-size arrays, |num_elements| is different than the specified
|
| - // size.
|
| - VALIDATION_ERROR_UNEXPECTED_ARRAY_HEADER,
|
| - // An encoded handle is illegal.
|
| - VALIDATION_ERROR_ILLEGAL_HANDLE,
|
| - // A non-nullable handle field is set to invalid handle.
|
| - VALIDATION_ERROR_UNEXPECTED_INVALID_HANDLE,
|
| - // An encoded pointer is illegal.
|
| - VALIDATION_ERROR_ILLEGAL_POINTER,
|
| - // A non-nullable pointer field is set to null.
|
| - VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
|
| - // |flags| in the message header is an invalid flag combination.
|
| - VALIDATION_ERROR_MESSAGE_HEADER_INVALID_FLAG_COMBINATION,
|
| - // |flags| in the message header indicates that a request ID is required but
|
| - // there isn't one.
|
| - VALIDATION_ERROR_MESSAGE_HEADER_MISSING_REQUEST_ID,
|
| - // Two parallel arrays which are supposed to represent a map have different
|
| - // lengths.
|
| - VALIDATION_ERROR_DIFFERENT_SIZED_ARRAYS_IN_MAP
|
| -};
|
| -
|
| -const char* ValidationErrorToString(ValidationError error);
|
| -
|
| -void ReportValidationError(ValidationError error,
|
| - const char* description = nullptr);
|
| -
|
| -// Only used by validation tests and when there is only one thread doing message
|
| -// validation.
|
| -class ValidationErrorObserverForTesting {
|
| - public:
|
| - ValidationErrorObserverForTesting();
|
| - ~ValidationErrorObserverForTesting();
|
| -
|
| - ValidationError last_error() const { return last_error_; }
|
| - void set_last_error(ValidationError error) { last_error_ = error; }
|
| -
|
| - private:
|
| - ValidationError last_error_;
|
| -
|
| - MOJO_DISALLOW_COPY_AND_ASSIGN(ValidationErrorObserverForTesting);
|
| -};
|
| -
|
| -// Used only by MOJO_INTERNAL_DLOG_SERIALIZATION_WARNING. Don't use it directly.
|
| -//
|
| -// The function returns true if the error is recorded (by a
|
| -// SerializationWarningObserverForTesting object), false otherwise.
|
| -bool ReportSerializationWarning(ValidationError error);
|
| -
|
| -// Only used by serialization tests and when there is only one thread doing
|
| -// message serialization.
|
| -class SerializationWarningObserverForTesting {
|
| - public:
|
| - SerializationWarningObserverForTesting();
|
| - ~SerializationWarningObserverForTesting();
|
| -
|
| - ValidationError last_warning() const { return last_warning_; }
|
| - void set_last_warning(ValidationError error) { last_warning_ = error; }
|
| -
|
| - private:
|
| - ValidationError last_warning_;
|
| -
|
| - MOJO_DISALLOW_COPY_AND_ASSIGN(SerializationWarningObserverForTesting);
|
| -};
|
| -
|
| -} // namespace internal
|
| -} // namespace mojo
|
| -
|
| -// In debug build, logs a serialization warning if |condition| evaluates to
|
| -// true:
|
| -// - if there is a SerializationWarningObserverForTesting object alive,
|
| -// records |error| in it;
|
| -// - otherwise, logs a fatal-level message.
|
| -// |error| is the validation error that will be triggered by the receiver
|
| -// of the serialzation result.
|
| -//
|
| -// In non-debug build, does nothing (not even compiling |condition|).
|
| -#define MOJO_INTERNAL_DLOG_SERIALIZATION_WARNING( \
|
| - condition, error, description) \
|
| - MOJO_DLOG_IF(FATAL, (condition) && !ReportSerializationWarning(error)) \
|
| - << "The outgoing message will trigger " \
|
| - << ValidationErrorToString(error) << " at the receiving side (" \
|
| - << description << ").";
|
| -
|
| -#endif // MOJO_PUBLIC_CPP_BINDINGS_LIB_VALIDATION_ERRORS_H_
|
|
|