コード例 #1
0
         PrivatePart(
             List(A.protected_el, empty_valid=True, list_cls=DeclList))),
     end_named_block()),
 protected_decl=SingleProtectedDecl(res("protected"), A.defining_id,
                                    A.aspect_spec, "is",
                                    Opt("new", A.parent_list,
                                        "with"), A.protected_def, sc()),
 task_item=Or(A.entry_decl, A.aspect_clause, A.pragma),
 task_def=TaskDef(
     "is", Opt("new", A.parent_list, "with"),
     PublicPart(List(A.task_item, empty_valid=True, list_cls=DeclList)),
     Opt(
         "private",
         PrivatePart(List(A.task_item, empty_valid=True,
                          list_cls=DeclList))), end_named_block()),
 task_type_decl=TaskTypeDecl("task", "type", cut(), A.defining_id,
                             Opt(A.discriminant_part), A.aspect_spec,
                             Opt(A.task_def), sc()),
 subtype_decl=SubtypeDecl("subtype", A.defining_id, "is",
                          A.subtype_indication, A.aspect_spec, sc()),
 interface_type_def=InterfaceTypeDef(
     Opt(
         Or(InterfaceKind.alt_limited("limited"),
            InterfaceKind.alt_task("task"),
            InterfaceKind.alt_protected(res("protected"), ),
            InterfaceKind.alt_synchronized(res("synchronized"), ))),
     res("interface"), Opt("and", A.parent_list)),
 unconstrained_index=UnconstrainedArrayIndex(A.subtype_indication, "range",
                                             "<>"),
 array_type_def=ArrayTypeDef(
     "array", "(",
コード例 #2
0
ファイル: grammar.py プロジェクト: raph-amiard/libadalang
    task_def=TaskDef(
        "is",
        Opt("new", A.parent_list, "with"),
        PublicPart(
            List(A.task_item, empty_valid=True, list_cls=DeclList)
        ),
        Opt("private",
            PrivatePart(
                List(A.task_item, empty_valid=True, list_cls=DeclList)
            )),
        end_named_block()
    ),

    task_type_decl=TaskTypeDecl(
        "task", "type", cut(), A.defining_id, Opt(A.discriminant_part),
        A.aspect_spec,
        Opt(A.task_def), sc()
    ),

    subtype_decl=SubtypeDecl(
        "subtype", A.defining_id, "is", A.subtype_indication,
        A.aspect_spec, sc()
    ),

    interface_type_def=InterfaceTypeDef(
        Opt(Or(
            InterfaceKind.alt_limited("limited"),
            InterfaceKind.alt_task("task"),
            InterfaceKind.alt_protected(
                res("protected"),