Ada Programming/Operators
Standard operatorsEdit
Ada allows operator overloading for all standard operators and so the following summaries can only describe the suggested standard operations for each operator. It is quite possible to misuse any standard operator to perform something unusual.
Each operator is either a keyword or a delimiter—hence all operator pages are redirects to the appropriate keyword or delimiter.
Operators have arguments which in the RM are called Left and Right for binary operators, Right for unary operators (indicating the position with respect to the operator symbol).
The list is sorted from lowest precedence to highest precedence.
Logical operatorsEdit
Relational operatorsEdit
- /=
- Not Equal , (also special character /=)
- =
- Equal , (also special character =)
- <
- Less than , (also special character <)
- <=
- Less than or equal to ( ), (also special character <=)
- >
- Greater than ( ), (also special character >)
- >=
- Greater than or equal to ( ), (also special character >=)
Binary adding operatorsEdit
- +
- Add , (also special character +)
- -
- Subtract , (also special character -)
- &
- Concatenate , & , (also special character &)
Unary adding operatorsEdit
Multiplying operatorEdit
- *
- Multiply, , (also special character *)
- /
- Divide , (also special character /)
- mod
- modulus (also keyword mod)
- rem
- remainder (also keyword rem)
Highest precedence operatorEdit
Short-circuit control formsEdit
These are not operators and thus cannot be overloaded.
Membership testsEdit
The Membership Tests also cannot be overloaded because they are not operators.
- in
- element of, , e.g.
, (also keywordif
Iin
Positivethen
in
) - not in
- not element of, , e.g.
, (also keywordsif
Inot
in
Positivethen
not
in
)
Range membership testEdit
if
Todaynot
in
Tuesday .. Thursdaythen
...
Subtype membership testEdit
Is_Non_Negative := X in
Natural;
Class membership testEdit
exit
when
Objectin
Circle'Class;
Range membership testEdit
if
Todaynot
in
Tuesday .. Thursdaythen
...
Choice list membership testEdit
This language feature has been introduced in Ada 2012.
Ada 2012 extended the membership tests to include the union (short-circuit or) of several range or value choices.
if
Todayin
Monday .. Wednesday | Fridaythen
...
See alsoEdit
WikibookEdit
Ada 95 Reference ManualEdit
Ada 2005 Reference ManualEdit
Ada Quality and Style GuideEdit
Ada Operators | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|