pub fn parameter_type(data: Span) -> ParseResult<ast::ParameterType> {
    let type_list = tuple((
        ident_value,
        many0(preceded(delimited_space(tag("*")), ident_value)),
    ));
    let type_list_bracketes = get_from_brackets(tuple((
        ident_value,
        many0(preceded(delimited_space(tag("*")), ident_value)),
    )));

    map(
        alt((type_list, type_list_bracketes)),
        |(first, mut second)| {
            let mut res_list = vec![first];
            res_list.append(&mut second);
            res_list
        },
    )(data)
}
/// Parse parameter type. It can contain type sequence
/// ## RULES:
/// ```js
/// parameter-type = (ident-value ["*" ident-value] | "(" ident-value ["*" ident-value] ")")+
/// ```
Parse parameter type. It can contain type sequence
Parse parameter type . It can contain type sequence
pub fn parameter_type(data: Span) -> ParseResult<ast::ParameterType> {
    let type_list = tuple((
        ident_value,
        many0(preceded(delimited_space(tag("*")), ident_value)),
    ));
    let type_list_bracketes = get_from_brackets(tuple((
        ident_value,
        many0(preceded(delimited_space(tag("*")), ident_value)),
    )));
    map(
        alt((type_list, type_list_bracketes)),
        |(first, mut second)| {
            let mut res_list = vec![first];
            res_list.append(&mut second);
            res_list
        },
    )(data)
}
pub fn parameter_type ( data : Span ) -> ParseResult < ast :: ParameterType > { let type_list = tuple ( ( ident_value , many0 ( preceded ( delimited_space ( tag ( " " ) ) , ident_value ) ) , ) ) ; let type_list_bracketes = get_from_brackets ( tuple ( ( ident_value , many0 ( preceded ( delimited_space ( tag ( " " ) ) , ident_value ) ) , ) ) ) ; map ( alt ( ( type_list , type_list_bracketes ) ) , | ( first , mut second ) | { let mut res_list = vec ! [ first ] ; res_list . append ( & mut second ) ; res_list } , ) ( data ) }
Parse parameter type.
Parse parameter type .
data
Span
rules:
None