#### ip::icmp::resolver

The ICMP resolver type.

    typedef basic_resolver< icmp > resolver;

###### Types

Name | Description
--- | ---
rebind_executor | Rebinds the resolver type to another executor.
endpoint_type | The endpoint type.
executor_type | The type of the executor associated with the object.
flags | A bitmask type (C++ Std [lib.bitmask.types]).
iterator | (Deprecated.) The iterator type.
protocol_type | The protocol type.
query | (Deprecated.) The query type.
results_type | The results type.

###### Member Functions

Name | Description
--- | ---
async_resolve | (Deprecated: Use overload with separate host and service parameters.) Asynchronously perform forward resolution of a query to a list of entries. — Asynchronously perform forward resolution of a query to a list of entries. — Asynchronously perform reverse resolution of an endpoint to a list of entries.
basic_resolver [constructor] | Construct with executor. — Construct with execution context. — Move-construct a basic_resolver from another.
cancel | Cancel any asynchronous operations that are waiting on the resolver.
get_executor | Get the executor associated with the object.
operator= | Move-assign a basic_resolver from another.
resolve | (Deprecated: Use overload with separate host and service parameters.) Perform forward resolution of a query to a list of entries. — Perform forward resolution of a query to a list of entries. — Perform reverse resolution of an endpoint to a list of entries.
~basic_resolver [destructor] | Destroys the resolver.

###### Data Members

Name | Description
--- | ---
address_configured [static] | Only return IPv4 addresses if a non-loopback IPv4 address is configured for the system. Only return IPv6 addresses if a non-loopback IPv6 address is configured for the system.
all_matching [static] | If used with v4_mapped, return all matching IPv6 and IPv4 addresses.
canonical_name [static] | Determine the canonical name of the host specified in the query.
numeric_host [static] | Host name should be treated as a numeric string defining an IPv4 or IPv6 address and no name resolution should be attempted.
numeric_service [static] | Service name should be treated as a numeric string defining a port number and no name resolution should be attempted.
passive [static] | Indicate that returned endpoint is intended for use as a locally bound socket endpoint.
v4_mapped [static] | If the query protocol family is specified as IPv6, return IPv4-mapped IPv6 addresses on finding no IPv6 addresses.

The `ip::basic_resolver` class template provides the ability to resolve a query to a list of endpoints.

###### Thread Safety

Distinct objects: Safe.

Shared objects: Unsafe.

###### Requirements

Header: `asio/ip/icmp.hpp`

Convenience header: `asio.hpp`