Struct fluent_syntax::ast::Attribute
source · 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§
source§impl<S: PartialEq> PartialEq for Attribute<S>
impl<S: PartialEq> PartialEq for Attribute<S>
impl<S> StructuralPartialEq for Attribute<S>
Auto Trait Implementations§
impl<S> Freeze for Attribute<S>where
S: Freeze,
impl<S> RefUnwindSafe for Attribute<S>where
S: RefUnwindSafe,
impl<S> Send for Attribute<S>where
S: Send,
impl<S> Sync for Attribute<S>where
S: Sync,
impl<S> Unpin for Attribute<S>where
S: Unpin,
impl<S> UnwindSafe for Attribute<S>where
S: UnwindSafe,
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
Mutably borrows from an owned value. Read more