Skip to main content

Crate template_model

Crate template_model 

Source

Re-exports§

pub use budget::BudgetKind;
pub use consts::PSEUDO_PARAMETERS;
pub use consts::DEFAULT_ACCOUNT_ID;
pub use consts::DEFAULT_STACK_NAME;
pub use consts::FORMAT_VERSION;
pub use consts::MARKER_CONDITIONAL;
pub use consts::MARKER_DYNAMIC;
pub use consts::MARKER_ENUM;
pub use consts::MARKER_IF_FALSE;
pub use consts::MARKER_IF_TRUE;
pub use consts::MARKER_INTRINSIC;
pub use consts::MARKER_KIND;
pub use consts::MARKER_PARAM_TYPE;
pub use consts::MARKER_REF;
pub use consts::SAM_TRANSFORM_ERROR_PREFIX;
pub use consts::SAM_TRANSFORM_ERROR_RULE_ID;
pub use consts::is_sam_transform_error_message;
pub use defect::DefectPhase;
pub use defect::ParseDefect;
pub use json_value::JsonValue;
pub use message::primary_identifier_conflict_message;
pub use message::quote;
pub use message::render_str_list;
pub use message::render_value;
pub use message::render_value_list;
pub use model::ListMemberScenario;
pub use model::ParseConfig;
pub use model::ParseResult;
pub use model::PseudoParameterOverrides;
pub use model::SemanticModel;
pub use pattern::CompiledPattern;
pub use pattern::anchor_allowed_pattern;
pub use pattern::compile as compile_pattern;
pub use pattern::default_matches_pattern;
pub use pattern::is_service_valid;
pub use regions::AVAILABILITY_ZONES;
pub use regions::AWS_REGIONS;
pub use regions::DEFAULT_PARTITION;
pub use regions::DEFAULT_REGION;
pub use regions::DEFAULT_URL_SUFFIX;
pub use regions::availability_zones_for_region;
pub use regions::is_known_region;
pub use regions::partition_for_region;
pub use regions::url_suffix_for_region;
pub use schedule::schedule_expression_errors;
pub use span::SourceSpan;
pub use span::SpanProvider;
pub use span::UNKNOWN_SPAN;
pub use span::span_to_option;
pub use template_section::EntityType;
pub use template_section::TopLevelSection;
pub use template_section::entity_identity;
pub use value_patterns::AMI_ID_PATTERN;
pub use value_patterns::AVAILABILITY_ZONE_PATTERN;
pub use value_patterns::CAA_RECORD_PATTERN;
pub use value_patterns::IAM_ROLE_ARN_PATTERN;
pub use value_patterns::IAM_ROLE_NAME_PATTERN;
pub use value_patterns::MX_RECORD_PATTERN;
pub use value_patterns::SECURITY_GROUP_NAME_PATTERN;
pub use ir::*;

Modules§

budget
Deterministic, thread-safe, deduplicating tracker for validation budget exhaustions. Budget kinds form a finite enum — no unbounded per-path or per-query detail is stored. The tracker is designed to be shared across model construction (resolver, condition model) and downstream consumers (schema validator, rule engines) through the SemanticModel.
coercion
CloudFormation stringifies all scalar values before sending them to resource handlers, so 512 and "512" are equivalent. YAML 1.1 also parses yes/no as booleans. These helpers implement the same loose type semantics so that constraint checks (min/max, enum, pattern, length) work on coerced values.
conditions
consts
defect
Parse-time findings emitted while building the semantic model.
diagnostic
dynamodb
event_pattern
fargate
hardcoded_az
Shared detection of hardcoded availability zones, so both rule engines emit identical findings from one implementation instead of two that can drift.
iam_policy
Structural validation of embedded IAM identity policy documents.
ir
json_value
lambda_sqs
member_presence
Presence analysis for the members of a resolved list or map.
message
model
pattern
Shared regex compilation for CloudFormation pattern/AllowedPattern constraints.
region_enums
Shared logic for validating region-scoped instance-type / node-type enum values, used identically by the schema validator and both rule engines so they cannot diverge.
regions
resolved_value
resolver
route_table
Duplicate subnet/route-table association detection.
schedule
Validation of AWS::Events::Rule ScheduleExpression values (rate(...) / cron(...)).
span
template_section
value_patterns
Regexes for well-known AWS resource value formats (identifiers, record values, names) shared by the schema validator and the rule engines.
vpc_cidr
Subnet CIDR placement analysis.

Functions§

is_custom_resource_type
resolved_value_to_json