Struct fluent_syntax::ast::Attribute [−][src]
pub struct Attribute<S> {
pub id: Identifier<S>,
pub value: Pattern<S>,
}
Expand description
Attribute represents a part of a Message
or Term
.
Attributes are used to express a compound list of keyed
Pattern
elements on an entry.
Example
use fluent_syntax::parser;
use fluent_syntax::ast;
let ftl = r#"
hello-world =
.title = This is a title
.accesskey = T
"#;
let resource = parser::parse(ftl)
.expect("Failed to parse an FTL resource.");
assert_eq!(
resource,
ast::Resource {
body: vec![
ast::Entry::Message(ast::Message {
id: ast::Identifier {
name: "hello-world"
},
value: None,
attributes: vec![
ast::Attribute {
id: ast::Identifier {
name: "title"
},
value: ast::Pattern {
elements: vec![
ast::PatternElement::TextElement {
value: "This is a title"
},
]
}
},
ast::Attribute {
id: ast::Identifier {
name: "accesskey"
},
value: ast::Pattern {
elements: vec![
ast::PatternElement::TextElement {
value: "T"
},
]
}
}
],
comment: None,
}),
]
}
);
Fields
id: Identifier<S>
value: Pattern<S>
Trait Implementations
Auto Trait Implementations
impl<S> RefUnwindSafe for Attribute<S> where
S: RefUnwindSafe,
impl<S> UnwindSafe for Attribute<S> where
S: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more