xtd 0.2.0
Loading...
Searching...
No Matches
rank_exception.h
Go to the documentation of this file.
1
4#pragma once
5#include "literals.h"
6#include "system_exception.h"
7
9namespace xtd {
26 public:
28
33 explicit rank_exception(const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(default_message(), default_error(), stack_frame) {}
37 explicit rank_exception(const xtd::string& message, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(message, default_error(), stack_frame) {}
42 explicit rank_exception(const xtd::string& message, const std::error_code& error, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(message, error, stack_frame) {}
52 explicit rank_exception(const xtd::string& message, const std::error_code& error, const xtd::string& help_link, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(message, error, help_link, stack_frame) {}
57 explicit rank_exception(const std::exception& inner_exception, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(default_message(), inner_exception, default_error(), stack_frame) {}
62 explicit rank_exception(const xtd::string& message, const std::exception& inner_exception, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(message, inner_exception, default_error(), stack_frame) {}
68 explicit rank_exception(const xtd::string& message, const std::exception& inner_exception, const std::error_code& error, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(message, inner_exception, error, stack_frame) {}
81 explicit rank_exception(const xtd::string& message, const std::exception& inner_exception, const std::error_code& error, const xtd::string& help_link, const xtd::diagnostics::stack_frame& stack_frame = xtd::diagnostics::stack_frame::current()) : system_exception(message, inner_exception, error, help_link, stack_frame) {}
83
85 rank_exception(const rank_exception&) = default;
86 rank_exception& operator =(const rank_exception&) = default;
88
89 private:
90 const char* default_message() const noexcept {return "Attempted to operate on an array with the incorrect number of dimensions."_t;}
91 const std::error_code default_error() const noexcept {return {h_result::COR_E_RANK, h_result::h_result_category()};}
92 };
93}
Represents text as a sequence of character units.
Definition basic_string.h:79
Provides information about a xtd::diagnostics::stack_frame, which represents a function call on the c...
Definition stack_frame.h:47
static stack_frame current(const xtd::source_location &value=xtd::source_location::current()) noexcept
Crates a new xtd::diagnostics::stack_frame object corresponding to the location of the call site.
virtual const xtd::string & message() const noexcept
Gets message associate to the exception.
virtual exception_ref inner_exception() const noexcept
Gets the exception instance that caused the current exception.
virtual const xtd::string & help_link() const noexcept
Gets a link to the help file associated with this exception.
static constexpr int32 COR_E_RANK
Attempted to operate on an array with the incorrect number of dimensions.
Definition h_result.h:220
static const std::error_category & h_result_category() noexcept
Obtains a reference to the static error category object for HRESULT errors. The object is required to...
The exception that is thrown when an array with the wrong number of dimensions is passed to a method.
Definition rank_exception.h:25
rank_exception(const xtd::string &message, const std::exception &inner_exception, const std::error_code &error, const xtd::string &help_link, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:81
rank_exception(const xtd::string &message, const std::error_code &error, const xtd::string &help_link, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:52
rank_exception(const xtd::string &message, const std::exception &inner_exception, const std::error_code &error, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:68
rank_exception(const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:33
rank_exception(const xtd::string &message, const std::error_code &error, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:42
rank_exception(const std::exception &inner_exception, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:57
rank_exception(const xtd::string &message, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:37
rank_exception(const xtd::string &message, const xtd::string &help_link, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:47
rank_exception(const xtd::string &message, const std::exception &inner_exception, const xtd::string &help_link, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:74
rank_exception(const xtd::string &message, const std::exception &inner_exception, const xtd::diagnostics::stack_frame &stack_frame=xtd::diagnostics::stack_frame::current())
Create a new instance of class rank_exception.
Definition rank_exception.h:62
The exception that is thrown when a method call is invalid for the object's current state.
Definition system_exception.h:18
Contains xtd literals.
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.h:10
Contains xtd::system_exception exception.