#[non_exhaustive]pub struct Explanation {Show 54 fields
pub acl: Option<AnalysisComponent>,
pub acl_rule: Option<AnalysisAclRule>,
pub address: Option<String>,
pub addresses: Option<Vec<String>>,
pub attached_to: Option<AnalysisComponent>,
pub availability_zones: Option<Vec<String>>,
pub availability_zone_ids: Option<Vec<String>>,
pub cidrs: Option<Vec<String>>,
pub component: Option<AnalysisComponent>,
pub customer_gateway: Option<AnalysisComponent>,
pub destination: Option<AnalysisComponent>,
pub destination_vpc: Option<AnalysisComponent>,
pub direction: Option<String>,
pub explanation_code: Option<String>,
pub ingress_route_table: Option<AnalysisComponent>,
pub internet_gateway: Option<AnalysisComponent>,
pub load_balancer_arn: Option<String>,
pub classic_load_balancer_listener: Option<AnalysisLoadBalancerListener>,
pub load_balancer_listener_port: Option<i32>,
pub load_balancer_target: Option<AnalysisLoadBalancerTarget>,
pub load_balancer_target_group: Option<AnalysisComponent>,
pub load_balancer_target_groups: Option<Vec<AnalysisComponent>>,
pub load_balancer_target_port: Option<i32>,
pub elastic_load_balancer_listener: Option<AnalysisComponent>,
pub missing_component: Option<String>,
pub nat_gateway: Option<AnalysisComponent>,
pub network_interface: Option<AnalysisComponent>,
pub packet_field: Option<String>,
pub vpc_peering_connection: Option<AnalysisComponent>,
pub port: Option<i32>,
pub port_ranges: Option<Vec<PortRange>>,
pub prefix_list: Option<AnalysisComponent>,
pub protocols: Option<Vec<String>>,
pub route_table_route: Option<AnalysisRouteTableRoute>,
pub route_table: Option<AnalysisComponent>,
pub security_group: Option<AnalysisComponent>,
pub security_group_rule: Option<AnalysisSecurityGroupRule>,
pub security_groups: Option<Vec<AnalysisComponent>>,
pub source_vpc: Option<AnalysisComponent>,
pub state: Option<String>,
pub subnet: Option<AnalysisComponent>,
pub subnet_route_table: Option<AnalysisComponent>,
pub vpc: Option<AnalysisComponent>,
pub vpc_endpoint: Option<AnalysisComponent>,
pub vpn_connection: Option<AnalysisComponent>,
pub vpn_gateway: Option<AnalysisComponent>,
pub transit_gateway: Option<AnalysisComponent>,
pub transit_gateway_route_table: Option<AnalysisComponent>,
pub transit_gateway_route_table_route: Option<TransitGatewayRouteTableRoute>,
pub transit_gateway_attachment: Option<AnalysisComponent>,
pub component_account: Option<String>,
pub component_region: Option<String>,
pub firewall_stateless_rule: Option<FirewallStatelessRule>,
pub firewall_stateful_rule: Option<FirewallStatefulRule>,
}
Expand description
Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.acl: Option<AnalysisComponent>
The network ACL.
acl_rule: Option<AnalysisAclRule>
The network ACL rule.
address: Option<String>
The IPv4 address, in CIDR notation.
addresses: Option<Vec<String>>
The IPv4 addresses, in CIDR notation.
attached_to: Option<AnalysisComponent>
The resource to which the component is attached.
availability_zones: Option<Vec<String>>
The Availability Zones.
availability_zone_ids: Option<Vec<String>>
The IDs of the Availability Zones.
cidrs: Option<Vec<String>>
The CIDR ranges.
component: Option<AnalysisComponent>
The component.
customer_gateway: Option<AnalysisComponent>
The customer gateway.
destination: Option<AnalysisComponent>
The destination.
destination_vpc: Option<AnalysisComponent>
The destination VPC.
direction: Option<String>
The direction. The following are the possible values:
-
egress
-
ingress
explanation_code: Option<String>
The explanation code.
ingress_route_table: Option<AnalysisComponent>
The route table.
internet_gateway: Option<AnalysisComponent>
The internet gateway.
load_balancer_arn: Option<String>
The Amazon Resource Name (ARN) of the load balancer.
classic_load_balancer_listener: Option<AnalysisLoadBalancerListener>
The listener for a Classic Load Balancer.
load_balancer_listener_port: Option<i32>
The listener port of the load balancer.
load_balancer_target: Option<AnalysisLoadBalancerTarget>
The target.
load_balancer_target_group: Option<AnalysisComponent>
The target group.
load_balancer_target_groups: Option<Vec<AnalysisComponent>>
The target groups.
load_balancer_target_port: Option<i32>
The target port.
elastic_load_balancer_listener: Option<AnalysisComponent>
The load balancer listener.
missing_component: Option<String>
The missing component.
nat_gateway: Option<AnalysisComponent>
The NAT gateway.
network_interface: Option<AnalysisComponent>
The network interface.
packet_field: Option<String>
The packet field.
vpc_peering_connection: Option<AnalysisComponent>
The VPC peering connection.
port: Option<i32>
The port.
port_ranges: Option<Vec<PortRange>>
The port ranges.
prefix_list: Option<AnalysisComponent>
The prefix list.
protocols: Option<Vec<String>>
The protocols.
route_table_route: Option<AnalysisRouteTableRoute>
The route table route.
route_table: Option<AnalysisComponent>
The route table.
security_group: Option<AnalysisComponent>
The security group.
security_group_rule: Option<AnalysisSecurityGroupRule>
The security group rule.
security_groups: Option<Vec<AnalysisComponent>>
The security groups.
source_vpc: Option<AnalysisComponent>
The source VPC.
state: Option<String>
The state.
subnet: Option<AnalysisComponent>
The subnet.
subnet_route_table: Option<AnalysisComponent>
The route table for the subnet.
vpc: Option<AnalysisComponent>
The component VPC.
vpc_endpoint: Option<AnalysisComponent>
The VPC endpoint.
vpn_connection: Option<AnalysisComponent>
The VPN connection.
vpn_gateway: Option<AnalysisComponent>
The VPN gateway.
transit_gateway: Option<AnalysisComponent>
The transit gateway.
transit_gateway_route_table: Option<AnalysisComponent>
The transit gateway route table.
transit_gateway_route_table_route: Option<TransitGatewayRouteTableRoute>
The transit gateway route table route.
transit_gateway_attachment: Option<AnalysisComponent>
The transit gateway attachment.
component_account: Option<String>
The Amazon Web Services account for the component.
component_region: Option<String>
The Region for the component.
firewall_stateless_rule: Option<FirewallStatelessRule>
The Network Firewall stateless rule.
firewall_stateful_rule: Option<FirewallStatefulRule>
The Network Firewall stateful rule.
Implementations§
Source§impl Explanation
impl Explanation
Sourcepub fn acl(&self) -> Option<&AnalysisComponent>
pub fn acl(&self) -> Option<&AnalysisComponent>
The network ACL.
Sourcepub fn acl_rule(&self) -> Option<&AnalysisAclRule>
pub fn acl_rule(&self) -> Option<&AnalysisAclRule>
The network ACL rule.
Sourcepub fn addresses(&self) -> &[String]
pub fn addresses(&self) -> &[String]
The IPv4 addresses, in CIDR notation.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .addresses.is_none()
.
Sourcepub fn attached_to(&self) -> Option<&AnalysisComponent>
pub fn attached_to(&self) -> Option<&AnalysisComponent>
The resource to which the component is attached.
Sourcepub fn availability_zones(&self) -> &[String]
pub fn availability_zones(&self) -> &[String]
The Availability Zones.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .availability_zones.is_none()
.
Sourcepub fn availability_zone_ids(&self) -> &[String]
pub fn availability_zone_ids(&self) -> &[String]
The IDs of the Availability Zones.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .availability_zone_ids.is_none()
.
Sourcepub fn cidrs(&self) -> &[String]
pub fn cidrs(&self) -> &[String]
The CIDR ranges.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .cidrs.is_none()
.
Sourcepub fn component(&self) -> Option<&AnalysisComponent>
pub fn component(&self) -> Option<&AnalysisComponent>
The component.
Sourcepub fn customer_gateway(&self) -> Option<&AnalysisComponent>
pub fn customer_gateway(&self) -> Option<&AnalysisComponent>
The customer gateway.
Sourcepub fn destination(&self) -> Option<&AnalysisComponent>
pub fn destination(&self) -> Option<&AnalysisComponent>
The destination.
Sourcepub fn destination_vpc(&self) -> Option<&AnalysisComponent>
pub fn destination_vpc(&self) -> Option<&AnalysisComponent>
The destination VPC.
Sourcepub fn direction(&self) -> Option<&str>
pub fn direction(&self) -> Option<&str>
The direction. The following are the possible values:
-
egress
-
ingress
Sourcepub fn explanation_code(&self) -> Option<&str>
pub fn explanation_code(&self) -> Option<&str>
The explanation code.
Sourcepub fn ingress_route_table(&self) -> Option<&AnalysisComponent>
pub fn ingress_route_table(&self) -> Option<&AnalysisComponent>
The route table.
Sourcepub fn internet_gateway(&self) -> Option<&AnalysisComponent>
pub fn internet_gateway(&self) -> Option<&AnalysisComponent>
The internet gateway.
Sourcepub fn load_balancer_arn(&self) -> Option<&str>
pub fn load_balancer_arn(&self) -> Option<&str>
The Amazon Resource Name (ARN) of the load balancer.
Sourcepub fn classic_load_balancer_listener(
&self,
) -> Option<&AnalysisLoadBalancerListener>
pub fn classic_load_balancer_listener( &self, ) -> Option<&AnalysisLoadBalancerListener>
The listener for a Classic Load Balancer.
Sourcepub fn load_balancer_listener_port(&self) -> Option<i32>
pub fn load_balancer_listener_port(&self) -> Option<i32>
The listener port of the load balancer.
Sourcepub fn load_balancer_target(&self) -> Option<&AnalysisLoadBalancerTarget>
pub fn load_balancer_target(&self) -> Option<&AnalysisLoadBalancerTarget>
The target.
Sourcepub fn load_balancer_target_group(&self) -> Option<&AnalysisComponent>
pub fn load_balancer_target_group(&self) -> Option<&AnalysisComponent>
The target group.
Sourcepub fn load_balancer_target_groups(&self) -> &[AnalysisComponent]
pub fn load_balancer_target_groups(&self) -> &[AnalysisComponent]
The target groups.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .load_balancer_target_groups.is_none()
.
Sourcepub fn load_balancer_target_port(&self) -> Option<i32>
pub fn load_balancer_target_port(&self) -> Option<i32>
The target port.
Sourcepub fn elastic_load_balancer_listener(&self) -> Option<&AnalysisComponent>
pub fn elastic_load_balancer_listener(&self) -> Option<&AnalysisComponent>
The load balancer listener.
Sourcepub fn missing_component(&self) -> Option<&str>
pub fn missing_component(&self) -> Option<&str>
The missing component.
Sourcepub fn nat_gateway(&self) -> Option<&AnalysisComponent>
pub fn nat_gateway(&self) -> Option<&AnalysisComponent>
The NAT gateway.
Sourcepub fn network_interface(&self) -> Option<&AnalysisComponent>
pub fn network_interface(&self) -> Option<&AnalysisComponent>
The network interface.
Sourcepub fn packet_field(&self) -> Option<&str>
pub fn packet_field(&self) -> Option<&str>
The packet field.
Sourcepub fn vpc_peering_connection(&self) -> Option<&AnalysisComponent>
pub fn vpc_peering_connection(&self) -> Option<&AnalysisComponent>
The VPC peering connection.
Sourcepub fn port_ranges(&self) -> &[PortRange]
pub fn port_ranges(&self) -> &[PortRange]
The port ranges.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .port_ranges.is_none()
.
Sourcepub fn prefix_list(&self) -> Option<&AnalysisComponent>
pub fn prefix_list(&self) -> Option<&AnalysisComponent>
The prefix list.
Sourcepub fn protocols(&self) -> &[String]
pub fn protocols(&self) -> &[String]
The protocols.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .protocols.is_none()
.
Sourcepub fn route_table_route(&self) -> Option<&AnalysisRouteTableRoute>
pub fn route_table_route(&self) -> Option<&AnalysisRouteTableRoute>
The route table route.
Sourcepub fn route_table(&self) -> Option<&AnalysisComponent>
pub fn route_table(&self) -> Option<&AnalysisComponent>
The route table.
Sourcepub fn security_group(&self) -> Option<&AnalysisComponent>
pub fn security_group(&self) -> Option<&AnalysisComponent>
The security group.
Sourcepub fn security_group_rule(&self) -> Option<&AnalysisSecurityGroupRule>
pub fn security_group_rule(&self) -> Option<&AnalysisSecurityGroupRule>
The security group rule.
Sourcepub fn security_groups(&self) -> &[AnalysisComponent]
pub fn security_groups(&self) -> &[AnalysisComponent]
The security groups.
If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .security_groups.is_none()
.
Sourcepub fn source_vpc(&self) -> Option<&AnalysisComponent>
pub fn source_vpc(&self) -> Option<&AnalysisComponent>
The source VPC.
Sourcepub fn subnet(&self) -> Option<&AnalysisComponent>
pub fn subnet(&self) -> Option<&AnalysisComponent>
The subnet.
Sourcepub fn subnet_route_table(&self) -> Option<&AnalysisComponent>
pub fn subnet_route_table(&self) -> Option<&AnalysisComponent>
The route table for the subnet.
Sourcepub fn vpc(&self) -> Option<&AnalysisComponent>
pub fn vpc(&self) -> Option<&AnalysisComponent>
The component VPC.
Sourcepub fn vpc_endpoint(&self) -> Option<&AnalysisComponent>
pub fn vpc_endpoint(&self) -> Option<&AnalysisComponent>
The VPC endpoint.
Sourcepub fn vpn_connection(&self) -> Option<&AnalysisComponent>
pub fn vpn_connection(&self) -> Option<&AnalysisComponent>
The VPN connection.
Sourcepub fn vpn_gateway(&self) -> Option<&AnalysisComponent>
pub fn vpn_gateway(&self) -> Option<&AnalysisComponent>
The VPN gateway.
Sourcepub fn transit_gateway(&self) -> Option<&AnalysisComponent>
pub fn transit_gateway(&self) -> Option<&AnalysisComponent>
The transit gateway.
Sourcepub fn transit_gateway_route_table(&self) -> Option<&AnalysisComponent>
pub fn transit_gateway_route_table(&self) -> Option<&AnalysisComponent>
The transit gateway route table.
Sourcepub fn transit_gateway_route_table_route(
&self,
) -> Option<&TransitGatewayRouteTableRoute>
pub fn transit_gateway_route_table_route( &self, ) -> Option<&TransitGatewayRouteTableRoute>
The transit gateway route table route.
Sourcepub fn transit_gateway_attachment(&self) -> Option<&AnalysisComponent>
pub fn transit_gateway_attachment(&self) -> Option<&AnalysisComponent>
The transit gateway attachment.
Sourcepub fn component_account(&self) -> Option<&str>
pub fn component_account(&self) -> Option<&str>
The Amazon Web Services account for the component.
Sourcepub fn component_region(&self) -> Option<&str>
pub fn component_region(&self) -> Option<&str>
The Region for the component.
Sourcepub fn firewall_stateless_rule(&self) -> Option<&FirewallStatelessRule>
pub fn firewall_stateless_rule(&self) -> Option<&FirewallStatelessRule>
The Network Firewall stateless rule.
Sourcepub fn firewall_stateful_rule(&self) -> Option<&FirewallStatefulRule>
pub fn firewall_stateful_rule(&self) -> Option<&FirewallStatefulRule>
The Network Firewall stateful rule.
Source§impl Explanation
impl Explanation
Sourcepub fn builder() -> ExplanationBuilder
pub fn builder() -> ExplanationBuilder
Creates a new builder-style object to manufacture Explanation
.
Trait Implementations§
Source§impl Clone for Explanation
impl Clone for Explanation
Source§fn clone(&self) -> Explanation
fn clone(&self) -> Explanation
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for Explanation
impl Debug for Explanation
Source§impl PartialEq for Explanation
impl PartialEq for Explanation
impl StructuralPartialEq for Explanation
Auto Trait Implementations§
impl Freeze for Explanation
impl RefUnwindSafe for Explanation
impl Send for Explanation
impl Sync for Explanation
impl Unpin for Explanation
impl UnwindSafe for Explanation
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);