Struct Client

Source
pub struct Client { /* private fields */ }
Expand description

Client for AWS Resource Groups

Client for invoking operations on AWS Resource Groups. Each operation on AWS Resource Groups is a method on this this struct. .send() MUST be invoked on the generated operations to dispatch the request to the service.

§Constructing a Client

A Config is required to construct a client. For most use cases, the aws-config crate should be used to automatically resolve this config using aws_config::load_from_env(), since this will resolve an SdkConfig which can be shared across multiple different AWS SDK clients. This config resolution process can be customized by calling aws_config::from_env() instead, which returns a ConfigLoader that uses the builder pattern to customize the default config.

In the simplest case, creating a client looks as follows:

let config = aws_config::load_from_env().await;
let client = aws_sdk_resourcegroups::Client::new(&config);

Occasionally, SDKs may have additional service-specific values that can be set on the Config that is absent from SdkConfig, or slightly different settings for a specific client may be desired. The Builder struct implements From<&SdkConfig>, so setting these specific settings can be done as follows:

let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_resourcegroups::config::Builder::from(&sdk_config)
    .some_service_specific_setting("value")
    .build();

See the aws-config docs and Config for more information on customizing configuration.

Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.

§Using the Client

A client has a function for every operation that can be performed by the service. For example, the CancelTagSyncTask operation has a Client::cancel_tag_sync_task, function which returns a builder for that operation. The fluent builder ultimately has a send() function that returns an async future that returns a result, as illustrated below:

let result = client.cancel_tag_sync_task()
    .task_arn("example")
    .send()
    .await;

The underlying HTTP requests that get made by this can be modified with the customize_operation function on the fluent builder. See the customize module for more information.

Implementations§

Source§

impl Client

Source

pub fn cancel_tag_sync_task(&self) -> CancelTagSyncTaskFluentBuilder

Constructs a fluent builder for the CancelTagSyncTask operation.

Source§

impl Client

Source

pub fn create_group(&self) -> CreateGroupFluentBuilder

Constructs a fluent builder for the CreateGroup operation.

Source§

impl Client

Source

pub fn delete_group(&self) -> DeleteGroupFluentBuilder

Constructs a fluent builder for the DeleteGroup operation.

Source§

impl Client

Source

pub fn get_account_settings(&self) -> GetAccountSettingsFluentBuilder

Constructs a fluent builder for the GetAccountSettings operation.

Source§

impl Client

Source

pub fn get_group(&self) -> GetGroupFluentBuilder

Constructs a fluent builder for the GetGroup operation.

Source§

impl Client

Source

pub fn get_group_configuration(&self) -> GetGroupConfigurationFluentBuilder

Constructs a fluent builder for the GetGroupConfiguration operation.

Source§

impl Client

Source

pub fn get_group_query(&self) -> GetGroupQueryFluentBuilder

Constructs a fluent builder for the GetGroupQuery operation.

Source§

impl Client

Source

pub fn get_tag_sync_task(&self) -> GetTagSyncTaskFluentBuilder

Constructs a fluent builder for the GetTagSyncTask operation.

  • The fluent builder is configurable:
  • On success, responds with GetTagSyncTaskOutput with field(s):
    • group_arn(Option<String>):

      The Amazon resource name (ARN) of the application group.

    • group_name(Option<String>):

      The name of the application group.

    • task_arn(Option<String>):

      The Amazon resource name (ARN) of the tag-sync task.

    • tag_key(Option<String>):

      The tag key.

    • tag_value(Option<String>):

      The tag value.

    • resource_query(Option<ResourceQuery>):

      The query you can use to define a resource group or a search for resources. A ResourceQuery specifies both a query Type and a Query string as JSON string objects. See the examples section for example JSON strings. For more information about creating a resource group with a resource query, see Build queries and groups in Resource Groups in the Resource Groups User Guide

      When you combine all of the elements together into a single string, any double quotes that are embedded inside another double quote pair must be escaped by preceding the embedded double quote with a backslash character (). For example, a complete ResourceQuery parameter must be formatted like the following CLI parameter example:

      –resource-query ‘{“Type”:“TAG_FILTERS_1_0”,“Query”:“{"ResourceTypeFilters":["AWS::AllSupported"],"TagFilters":[{"Key":"Stage","Values":["Test"]}]}”}’

      In the preceding example, all of the double quote characters in the value part of the Query element must be escaped because the value itself is surrounded by double quotes. For more information, see Quoting strings in the Command Line Interface User Guide.

      For the complete list of resource types that you can use in the array value for ResourceTypeFilters, see Resources you can use with Resource Groups and Tag Editor in the Resource Groups User Guide. For example:

      “ResourceTypeFilters”:[“AWS::S3::Bucket”, “AWS::EC2::Instance”]

    • role_arn(Option<String>):

      The Amazon resource name (ARN) of the role assumed by Resource Groups to tag and untag resources on your behalf.

      For more information about this role, review Tag-sync required permissions.

    • status(Option<TagSyncTaskStatus>):

      The status of the tag-sync task.

      Valid values include:

      • ACTIVE - The tag-sync task is actively managing resources in the application by adding or removing the awsApplication tag from resources when they are tagged or untagged with the specified tag key-value pair.

      • ERROR - The tag-sync task is not actively managing resources in the application. Review the ErrorMessage for more information about resolving the error.

    • error_message(Option<String>):

      The specific error message in cases where the tag-sync task status is ERROR.

    • created_at(Option<DateTime>):

      The timestamp of when the tag-sync task was created.

  • On failure, responds with SdkError<GetTagSyncTaskError>
Source§

impl Client

Source

pub fn get_tags(&self) -> GetTagsFluentBuilder

Constructs a fluent builder for the GetTags operation.

Source§

impl Client

Source

pub fn group_resources(&self) -> GroupResourcesFluentBuilder

Constructs a fluent builder for the GroupResources operation.

Source§

impl Client

Source

pub fn list_group_resources(&self) -> ListGroupResourcesFluentBuilder

Constructs a fluent builder for the ListGroupResources operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • group_name(impl Into<String>) / set_group_name(Option<String>):
      required: false

      Deprecated - don’t use this parameter. Use the Group request field instead.


    • group(impl Into<String>) / set_group(Option<String>):
      required: false

      The name or the Amazon resource name (ARN) of the resource group.


    • filters(ResourceFilter) / set_filters(Option<Vec::<ResourceFilter>>):
      required: false

      Filters, formatted as ResourceFilter objects, that you want to apply to a ListGroupResources operation. Filters the results to include only those of the specified resource types.

      • resource-type - Filter resources by their type. Specify up to five resource types in the format AWS::ServiceCode::ResourceType. For example, AWS::EC2::Instance, or AWS::S3::Bucket.

      When you specify a resource-type filter for ListGroupResources, Resource Groups validates your filter resource types against the types that are defined in the query associated with the group. For example, if a group contains only S3 buckets because its query specifies only that resource type, but your resource-type filter includes EC2 instances, AWS Resource Groups does not filter for EC2 instances. In this case, a ListGroupResources request returns a BadRequestException error with a message similar to the following:

      The resource types specified as filters in the request are not valid.

      The error includes a list of resource types that failed the validation because they are not part of the query associated with the group. This validation doesn’t occur when the group query specifies AWS::AllSupported, because a group based on such a query can contain any of the allowed resource types for the query type (tag-based or Amazon CloudFront stack-based queries).


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The total number of results that you want included on each page of the response. If you do not include this parameter, it defaults to a value that is specific to the operation. If additional items exist beyond the maximum you specify, the NextToken response element is present and has a value (is not null). Include that value as the NextToken request parameter in the next call to the operation to get the next part of the results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value provided by a previous call’s NextToken response to indicate where the output should continue from.


  • On success, responds with ListGroupResourcesOutput with field(s):
    • resources(Option<Vec::<ListGroupResourcesItem>>):

      An array of resources from which you can determine each resource’s identity, type, and group membership status.

    • resource_identifiers(Option<Vec::<ResourceIdentifier>>):

      Deprecated - don’t use this parameter. Use the Resources response field instead.

    • next_token(Option<String>):

      If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

    • query_errors(Option<Vec::<QueryError>>):

      A list of QueryError objects. Each error contains an ErrorCode and Message. Possible values for ErrorCode are CLOUDFORMATION_STACK_INACTIVE, CLOUDFORMATION_STACK_NOT_EXISTING, CLOUDFORMATION_STACK_UNASSUMABLE_ROLE and RESOURCE_TYPE_NOT_SUPPORTED.

  • On failure, responds with SdkError<ListGroupResourcesError>
Source§

impl Client

Source

pub fn list_grouping_statuses(&self) -> ListGroupingStatusesFluentBuilder

Constructs a fluent builder for the ListGroupingStatuses operation. This operation supports pagination; See into_paginator().

Source§

impl Client

Source

pub fn list_groups(&self) -> ListGroupsFluentBuilder

Constructs a fluent builder for the ListGroups operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • filters(GroupFilter) / set_filters(Option<Vec::<GroupFilter>>):
      required: false

      Filters, formatted as GroupFilter objects, that you want to apply to a ListGroups operation.

      • resource-type - Filter the results to include only those resource groups that have the specified resource type in their ResourceTypeFilter. For example, AWS::EC2::Instance would return any resource group with a ResourceTypeFilter that includes AWS::EC2::Instance.

      • configuration-type - Filter the results to include only those groups that have the specified configuration types attached. The current supported values are:

        • AWS::ResourceGroups::ApplicationGroup

        • AWS::AppRegistry::Application

        • AWS::AppRegistry::ApplicationResourceGroup

        • AWS::CloudFormation::Stack

        • AWS::EC2::CapacityReservationPool

        • AWS::EC2::HostManagement

        • AWS::NetworkFirewall::RuleGroup


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The total number of results that you want included on each page of the response. If you do not include this parameter, it defaults to a value that is specific to the operation. If additional items exist beyond the maximum you specify, the NextToken response element is present and has a value (is not null). Include that value as the NextToken request parameter in the next call to the operation to get the next part of the results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value provided by a previous call’s NextToken response to indicate where the output should continue from.


  • On success, responds with ListGroupsOutput with field(s):
    • group_identifiers(Option<Vec::<GroupIdentifier>>):

      A list of GroupIdentifier objects. Each identifier is an object that contains both the Name and the GroupArn.

    • groups(Option<Vec::<Group>>):

      Deprecated - don’t use this field. Use the GroupIdentifiers response field instead.

    • next_token(Option<String>):

      If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

  • On failure, responds with SdkError<ListGroupsError>
Source§

impl Client

Source

pub fn list_tag_sync_tasks(&self) -> ListTagSyncTasksFluentBuilder

Constructs a fluent builder for the ListTagSyncTasks operation. This operation supports pagination; See into_paginator().

Source§

impl Client

Source

pub fn put_group_configuration(&self) -> PutGroupConfigurationFluentBuilder

Constructs a fluent builder for the PutGroupConfiguration operation.

Source§

impl Client

Source

pub fn search_resources(&self) -> SearchResourcesFluentBuilder

Constructs a fluent builder for the SearchResources operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
    • resource_query(ResourceQuery) / set_resource_query(Option<ResourceQuery>):
      required: true

      The search query, using the same formats that are supported for resource group definition. For more information, see CreateGroup.


    • max_results(i32) / set_max_results(Option<i32>):
      required: false

      The total number of results that you want included on each page of the response. If you do not include this parameter, it defaults to a value that is specific to the operation. If additional items exist beyond the maximum you specify, the NextToken response element is present and has a value (is not null). Include that value as the NextToken request parameter in the next call to the operation to get the next part of the results. Note that the service might return fewer results than the maximum even when there are more results available. You should check NextToken after every operation to ensure that you receive all of the results.


    • next_token(impl Into<String>) / set_next_token(Option<String>):
      required: false

      The parameter for receiving additional results if you receive a NextToken response in a previous request. A NextToken response indicates that more output is available. Set this parameter to the value provided by a previous call’s NextToken response to indicate where the output should continue from.


  • On success, responds with SearchResourcesOutput with field(s):
    • resource_identifiers(Option<Vec::<ResourceIdentifier>>):

      The ARNs and resource types of resources that are members of the group that you specified.

    • next_token(Option<String>):

      If present, indicates that more output is available than is included in the current response. Use this value in the NextToken request parameter in a subsequent call to the operation to get the next part of the output. You should repeat this until the NextToken response element comes back as null.

    • query_errors(Option<Vec::<QueryError>>):

      A list of QueryError objects. Each error contains an ErrorCode and Message.

      Possible values for ErrorCode:

      • CLOUDFORMATION_STACK_INACTIVE

      • CLOUDFORMATION_STACK_NOT_EXISTING

      • CLOUDFORMATION_STACK_UNASSUMABLE_ROLE

  • On failure, responds with SdkError<SearchResourcesError>
Source§

impl Client

Source

pub fn start_tag_sync_task(&self) -> StartTagSyncTaskFluentBuilder

Constructs a fluent builder for the StartTagSyncTask operation.

  • The fluent builder is configurable:
    • group(impl Into<String>) / set_group(Option<String>):
      required: true

      The Amazon resource name (ARN) or name of the application group for which you want to create a tag-sync task.


    • tag_key(impl Into<String>) / set_tag_key(Option<String>):
      required: false

      The tag key. Resources tagged with this tag key-value pair will be added to the application. If a resource with this tag is later untagged, the tag-sync task removes the resource from the application.

      When using the TagKey parameter, you must also specify the TagValue parameter. If you specify a tag key-value pair, you can’t use the ResourceQuery parameter.


    • tag_value(impl Into<String>) / set_tag_value(Option<String>):
      required: false

      The tag value. Resources tagged with this tag key-value pair will be added to the application. If a resource with this tag is later untagged, the tag-sync task removes the resource from the application.

      When using the TagValue parameter, you must also specify the TagKey parameter. If you specify a tag key-value pair, you can’t use the ResourceQuery parameter.


    • resource_query(ResourceQuery) / set_resource_query(Option<ResourceQuery>):
      required: false

      The query you can use to create the tag-sync task. With this method, all resources matching the query are added to the specified application group. A ResourceQuery specifies both a query Type and a Query string as JSON string objects. For more information on defining a resource query for a tag-sync task, see the tag-based query type in Types of resource group queries in Resource Groups User Guide.

      When using the ResourceQuery parameter, you cannot use the TagKey and TagValue parameters.

      When you combine all of the elements together into a single string, any double quotes that are embedded inside another double quote pair must be escaped by preceding the embedded double quote with a backslash character (). For example, a complete ResourceQuery parameter must be formatted like the following CLI parameter example:

      –resource-query ‘{“Type”:“TAG_FILTERS_1_0”,“Query”:“{"ResourceTypeFilters":["AWS::AllSupported"],"TagFilters":[{"Key":"Stage","Values":["Test"]}]}”}’

      In the preceding example, all of the double quote characters in the value part of the Query element must be escaped because the value itself is surrounded by double quotes. For more information, see Quoting strings in the Command Line Interface User Guide.

      For the complete list of resource types that you can use in the array value for ResourceTypeFilters, see Resources you can use with Resource Groups and Tag Editor in the Resource Groups User Guide. For example:

      “ResourceTypeFilters”:[“AWS::S3::Bucket”, “AWS::EC2::Instance”]


    • role_arn(impl Into<String>) / set_role_arn(Option<String>):
      required: true

      The Amazon resource name (ARN) of the role assumed by the service to tag and untag resources on your behalf.


  • On success, responds with StartTagSyncTaskOutput with field(s):
    • group_arn(Option<String>):

      The Amazon resource name (ARN) of the application group for which you want to add or remove resources.

    • group_name(Option<String>):

      The name of the application group to onboard and sync resources.

    • task_arn(Option<String>):

      The Amazon resource name (ARN) of the new tag-sync task.

    • tag_key(Option<String>):

      The tag key of the tag-sync task.

    • tag_value(Option<String>):

      The tag value of the tag-sync task.

    • resource_query(Option<ResourceQuery>):

      The query you can use to define a resource group or a search for resources. A ResourceQuery specifies both a query Type and a Query string as JSON string objects. See the examples section for example JSON strings. For more information about creating a resource group with a resource query, see Build queries and groups in Resource Groups in the Resource Groups User Guide

      When you combine all of the elements together into a single string, any double quotes that are embedded inside another double quote pair must be escaped by preceding the embedded double quote with a backslash character (). For example, a complete ResourceQuery parameter must be formatted like the following CLI parameter example:

      –resource-query ‘{“Type”:“TAG_FILTERS_1_0”,“Query”:“{"ResourceTypeFilters":["AWS::AllSupported"],"TagFilters":[{"Key":"Stage","Values":["Test"]}]}”}’

      In the preceding example, all of the double quote characters in the value part of the Query element must be escaped because the value itself is surrounded by double quotes. For more information, see Quoting strings in the Command Line Interface User Guide.

      For the complete list of resource types that you can use in the array value for ResourceTypeFilters, see Resources you can use with Resource Groups and Tag Editor in the Resource Groups User Guide. For example:

      “ResourceTypeFilters”:[“AWS::S3::Bucket”, “AWS::EC2::Instance”]

    • role_arn(Option<String>):

      The Amazon resource name (ARN) of the role assumed by the service to tag and untag resources on your behalf.

  • On failure, responds with SdkError<StartTagSyncTaskError>
Source§

impl Client

Source

pub fn tag(&self) -> TagFluentBuilder

Constructs a fluent builder for the Tag operation.

Source§

impl Client

Source

pub fn ungroup_resources(&self) -> UngroupResourcesFluentBuilder

Constructs a fluent builder for the UngroupResources operation.

Source§

impl Client

Source

pub fn untag(&self) -> UntagFluentBuilder

Constructs a fluent builder for the Untag operation.

Source§

impl Client

Source

pub fn update_account_settings(&self) -> UpdateAccountSettingsFluentBuilder

Constructs a fluent builder for the UpdateAccountSettings operation.

Source§

impl Client

Source

pub fn update_group(&self) -> UpdateGroupFluentBuilder

Constructs a fluent builder for the UpdateGroup operation.

Source§

impl Client

Source

pub fn update_group_query(&self) -> UpdateGroupQueryFluentBuilder

Constructs a fluent builder for the UpdateGroupQuery operation.

Source§

impl Client

Source

pub fn from_conf(conf: Config) -> Self

Creates a new client from the service Config.

§Panics

This method will panic in the following cases:

  • Retries or timeouts are enabled without a sleep_impl configured.
  • Identity caching is enabled without a sleep_impl and time_source configured.
  • No behavior_version is provided.

The panic message for each of these will have instructions on how to resolve them.

Source

pub fn config(&self) -> &Config

Returns the client’s configuration.

Source§

impl Client

Source

pub fn new(sdk_config: &SdkConfig) -> Self

Creates a new client from an SDK Config.

§Panics
  • This method will panic if the sdk_config is missing an async sleep implementation. If you experience this panic, set the sleep_impl on the Config passed into this function to fix it.
  • This method will panic if the sdk_config is missing an HTTP connector. If you experience this panic, set the http_connector on the Config passed into this function to fix it.
  • This method will panic if no BehaviorVersion is provided. If you experience this panic, set behavior_version on the Config or enable the behavior-version-latest Cargo feature.

Trait Implementations§

Source§

impl Clone for Client

Source§

fn clone(&self) -> Client

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Client

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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 more
Source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

Source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

impl<T> Paint for T
where T: ?Sized,

Source§

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 primary(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Primary].

§Example
println!("{}", value.primary());
Source§

fn fixed(&self, color: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Fixed].

§Example
println!("{}", value.fixed(color));
Source§

fn rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Rgb].

§Example
println!("{}", value.rgb(r, g, b));
Source§

fn black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Black].

§Example
println!("{}", value.black());
Source§

fn red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Red].

§Example
println!("{}", value.red());
Source§

fn green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Green].

§Example
println!("{}", value.green());
Source§

fn yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Yellow].

§Example
println!("{}", value.yellow());
Source§

fn blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Blue].

§Example
println!("{}", value.blue());
Source§

fn magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Magenta].

§Example
println!("{}", value.magenta());
Source§

fn cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Cyan].

§Example
println!("{}", value.cyan());
Source§

fn white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: White].

§Example
println!("{}", value.white());
Source§

fn bright_black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlack].

§Example
println!("{}", value.bright_black());
Source§

fn bright_red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightRed].

§Example
println!("{}", value.bright_red());
Source§

fn bright_green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightGreen].

§Example
println!("{}", value.bright_green());
Source§

fn bright_yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightYellow].

§Example
println!("{}", value.bright_yellow());
Source§

fn bright_blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlue].

§Example
println!("{}", value.bright_blue());
Source§

fn bright_magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.bright_magenta());
Source§

fn bright_cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightCyan].

§Example
println!("{}", value.bright_cyan());
Source§

fn bright_white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightWhite].

§Example
println!("{}", value.bright_white());
Source§

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>

Returns self with the bg() set to [Color :: Primary].

§Example
println!("{}", value.on_primary());
Source§

fn on_fixed(&self, color: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Fixed].

§Example
println!("{}", value.on_fixed(color));
Source§

fn on_rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Rgb].

§Example
println!("{}", value.on_rgb(r, g, b));
Source§

fn on_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Black].

§Example
println!("{}", value.on_black());
Source§

fn on_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Red].

§Example
println!("{}", value.on_red());
Source§

fn on_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Green].

§Example
println!("{}", value.on_green());
Source§

fn on_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Yellow].

§Example
println!("{}", value.on_yellow());
Source§

fn on_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Blue].

§Example
println!("{}", value.on_blue());
Source§

fn on_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Magenta].

§Example
println!("{}", value.on_magenta());
Source§

fn on_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Cyan].

§Example
println!("{}", value.on_cyan());
Source§

fn on_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: White].

§Example
println!("{}", value.on_white());
Source§

fn on_bright_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlack].

§Example
println!("{}", value.on_bright_black());
Source§

fn on_bright_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightRed].

§Example
println!("{}", value.on_bright_red());
Source§

fn on_bright_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightGreen].

§Example
println!("{}", value.on_bright_green());
Source§

fn on_bright_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightYellow].

§Example
println!("{}", value.on_bright_yellow());
Source§

fn on_bright_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlue].

§Example
println!("{}", value.on_bright_blue());
Source§

fn on_bright_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.on_bright_magenta());
Source§

fn on_bright_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightCyan].

§Example
println!("{}", value.on_bright_cyan());
Source§

fn on_bright_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightWhite].

§Example
println!("{}", value.on_bright_white());
Source§

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 bold(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Bold].

§Example
println!("{}", value.bold());
Source§

fn dim(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Dim].

§Example
println!("{}", value.dim());
Source§

fn italic(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Italic].

§Example
println!("{}", value.italic());
Source§

fn underline(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Underline].

§Example
println!("{}", value.underline());

Returns self with the attr() set to [Attribute :: Blink].

§Example
println!("{}", value.blink());

Returns self with the attr() set to [Attribute :: RapidBlink].

§Example
println!("{}", value.rapid_blink());
Source§

fn invert(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Invert].

§Example
println!("{}", value.invert());
Source§

fn conceal(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Conceal].

§Example
println!("{}", value.conceal());
Source§

fn strike(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Strike].

§Example
println!("{}", value.strike());
Source§

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 mask(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Mask].

§Example
println!("{}", value.mask());
Source§

fn wrap(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Wrap].

§Example
println!("{}", value.wrap());
Source§

fn linger(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Linger].

§Example
println!("{}", value.linger());
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.

Returns self with the quirk() set to [Quirk :: Clear].

§Example
println!("{}", value.clear());
Source§

fn resetting(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Resetting].

§Example
println!("{}", value.resetting());
Source§

fn bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Bright].

§Example
println!("{}", value.bright());
Source§

fn on_bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: OnBright].

§Example
println!("{}", value.on_bright());
Source§

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);
Source§

fn new(self) -> Painted<Self>
where Self: Sized,

Create a new Painted with a default Style. Read more
Source§

fn paint<S>(&self, style: S) -> Painted<&Self>
where S: Into<Style>,

Apply a style wholesale to self. Any previous style is replaced. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,