[][src]Function moore_vhdl_syntax::parser::rules::parse_type_decl

pub fn parse_type_decl<P: Parser>(
    p: &mut P,
    with_semicolon: bool
) -> ReportedResult<TypeDecl>

Parse a type declaration. See IEEE 1076-2008 section 6.2.

type_decl := "type" ident ["is" type_def] ";"
type_def
  := paren_expr
  := "range" range
  := "range" range units_decl
  := "array" paren_expr "of" subtype_ind
  := "record" {{ident}","+ ":" subtype_ind ";"}+ "end" "record" [ident]
  := "access" subtype_ind
  := "file" "of" name
  := protected_type_decl
  := protected_type_body