Add lifetimes to ExternType and TypeAlias syntax tree
diff --git a/syntax/mod.rs b/syntax/mod.rs
index 111cec3..c878ae2 100644
--- a/syntax/mod.rs
+++ b/syntax/mod.rs
@@ -74,6 +74,7 @@
pub derives: Vec<Derive>,
pub type_token: Token![type],
pub name: Pair,
+ pub lifetimes: Vec<Lifetime>,
pub colon_token: Option<Token![:]>,
pub bounds: Vec<Derive>,
pub semi_token: Token![;],
@@ -115,6 +116,7 @@
pub derives: Vec<Derive>,
pub type_token: Token![type],
pub name: Pair,
+ pub lifetimes: Vec<Lifetime>,
pub eq_token: Token![=],
pub ty: RustType,
pub semi_token: Token![;],
diff --git a/syntax/parse.rs b/syntax/parse.rs
index 1ae4c2d..0cbb2aa 100644
--- a/syntax/parse.rs
+++ b/syntax/parse.rs
@@ -385,6 +385,7 @@
let type_token = foreign_type.type_token;
let name = pair(namespace, &foreign_type.ident, cxx_name, rust_name);
+ let lifetimes = Vec::new();
let colon_token = None;
let bounds = Vec::new();
let semi_token = foreign_type.semi_token;
@@ -398,6 +399,7 @@
derives,
type_token,
name,
+ lifetimes,
colon_token,
bounds,
semi_token,
@@ -632,12 +634,14 @@
}
let name = pair(namespace, &ident, cxx_name, rust_name);
+ let lifetimes = Vec::new();
Ok(Api::TypeAlias(TypeAlias {
doc,
derives,
type_token,
name,
+ lifetimes,
eq_token,
ty,
semi_token,
@@ -704,6 +708,7 @@
);
let name = pair(namespace, &ident, cxx_name, rust_name);
+ let lifetimes = Vec::new();
let colon_token = Some(colon_token);
Ok(match lang {
@@ -715,6 +720,7 @@
derives,
type_token,
name,
+ lifetimes,
colon_token,
bounds,
semi_token,