Ada Programming/Keywords/interface

From Wikibooks, open books for an open world
Jump to navigation Jump to search

Ada. Time-tested, safe and secure.
Ada. Time-tested, safe and secure.

This language feature is only available from Ada 2005 on.

Used to declare an interface. Interfaces are the most important innovation in Ada 2005. The basic semantic has been taken from the interface concept of the Java programming language. Interface inheritance is a reduced form of multiple inheritance.

Interface types[edit | edit source]

There are various forms of interfaces available:

Normal interface[edit | edit source]

The normal interface is declared as:

 type Printable is interface;

Limited interface[edit | edit source]

Can be used as interface to limited tagged type.

 type Printable is limited interface;

Synchronized interface[edit | edit source]

type Printable is synchronized interface;

All synchronized interfaces are also limited.

Task interface[edit | edit source]

Can be used as an interface to a task type.

type Printable is task interface;

All task interfaces are also synchronized.

Protected interface[edit | edit source]

Can be used as an interface to a protected type.

 type Printable is protected interface;

All protected interfaces are also synchronized.

See also[edit | edit source]

Wikibook[edit | edit source]

Ada Reference Manual[edit | edit source]

Ada 2005[edit | edit source]

Ada Quality and Style Guide[edit | edit source]

Ada Keywords
abort else new return
abs elsif not reverse
abstract (Ada 95) end null
accept entry select
access exception of separate
aliased (Ada 95) exit or some (Ada 2012)
all others subtype
and for out synchronized (Ada 2005)
array function overriding (Ada 2005)
at tagged (Ada 95)
generic package task
begin goto pragma terminate
body private then
if procedure type
case in protected (Ada 95)
constant interface (Ada 2005) until (Ada 95)
is raise use
declare range
delay limited record when
delta loop rem while
digits renames with
do mod requeue (Ada 95) xor