1use crate::priv_prelude::*;
2
3#[derive(Clone, Debug, Serialize)]
4pub enum GenericParam {
5 Trait { ident: Ident },
6 Const { ident: Ident, ty: Ident },
7}
8
9#[derive(Clone, Debug, Serialize)]
10pub struct GenericParams {
11 pub parameters: AngleBrackets<Punctuated<GenericParam, CommaToken>>,
12}
13
14#[derive(Clone, Debug, Serialize)]
15pub struct GenericArgs {
16 pub parameters: AngleBrackets<Punctuated<Ty, CommaToken>>,
17}
18
19impl Spanned for GenericArgs {
20 fn span(&self) -> Span {
21 self.parameters.span()
22 }
23}