<?xml version="1.0"?>
<!DOCTYPE MODE SYSTEM "xmode.dtd">
<!--
This is a jedit mode file for Ada programming language.
Copyright (C) 2012 Peter C. Chapin (pchapin@sf)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-->
<!-- TODO: Support based literals as numeric literals: 16#FF#
Support numeric literals with an exponent: 1.0e2, 1e2. -->
<MODE>
<PROPS>
<PROPERTY NAME="lineComment" VALUE="--" />
<PROPERTY NAME="indentNextLines"
VALUE=".*(begin|declare|do|else|elsif|exception|generic|is|loop|private|record|select|tagged|then|with|=>|:=)\s*(--.*)?$"/>
<PROPERTY NAME="unindentThisLine"
VALUE="^\s*end\b.*;"/>
<PROPERTY NAME="unindentNextLines"
VALUE="^\s*end\b.*;"/>
<PROPERTY NAME="electricKeys" VALUE=";"/>
</PROPS>
<RULES IGNORE_CASE="TRUE" HIGHLIGHT_DIGITS="TRUE">
<!-- SPARK annotation comments. -->
<EOL_SPAN TYPE="COMMENT2">--#</EOL_SPAN>
<!-- Normal comments. -->
<EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>
<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
<BEGIN>"
<END>"
</SPAN>
<!-- Operators and Related -->
<SEQ TYPE="OPERATOR">)</SEQ>
<SEQ TYPE="OPERATOR">(</SEQ>
<SEQ TYPE="OPERATOR">..</SEQ>
<SEQ TYPE="OPERATOR">.all</SEQ>
<SEQ TYPE="OPERATOR">:=</SEQ>
<SEQ TYPE="OPERATOR">/=</SEQ>
<SEQ TYPE="OPERATOR">=></SEQ>
<SEQ TYPE="OPERATOR">=</SEQ>
<SEQ TYPE="NULL"><></SEQ>
<SEQ TYPE="LABEL"><<</SEQ>
<SEQ TYPE="LABEL">>></SEQ>
<SEQ TYPE="OPERATOR">>=</SEQ>
<SEQ TYPE="OPERATOR"><=</SEQ>
<SEQ TYPE="OPERATOR">></SEQ>
<SEQ TYPE="OPERATOR"><</SEQ>
<SEQ TYPE="OPERATOR">&</SEQ>
<SEQ TYPE="OPERATOR">+</SEQ>
<SEQ TYPE="OPERATOR">-</SEQ>
<SEQ TYPE="OPERATOR">/</SEQ>
<SEQ TYPE="OPERATOR">**</SEQ>
<SEQ TYPE="OPERATOR">*</SEQ>
<!-- Predefined Attributes -->
<!-- From Section K.2 "Language-Defined Attributes" in the Ada Reference Manual. -->
<SEQ TYPE="KEYWORD3">'access
<SEQ TYPE="KEYWORD3">'address
<SEQ TYPE="KEYWORD3">'adjacent
<SEQ TYPE="KEYWORD3">'aft
<SEQ TYPE="KEYWORD3">'alignment
<SEQ TYPE="KEYWORD3">'base
<SEQ TYPE="KEYWORD3">'bit_order
<SEQ TYPE="KEYWORD3">'body_version
<SEQ TYPE="KEYWORD3">'callable
<SEQ TYPE="KEYWORD3">'caller
<SEQ TYPE="KEYWORD3">'ceiling
<SEQ TYPE="KEYWORD3">'class
<SEQ TYPE="KEYWORD3">'component_size
<SEQ TYPE="KEYWORD3">'compose
<SEQ TYPE="KEYWORD3">'constrained
<SEQ TYPE="KEYWORD3">'copy_size
<SEQ TYPE="KEYWORD3">'count
<SEQ TYPE="KEYWORD3">'definite
<SEQ TYPE="KEYWORD3">'delta
<SEQ TYPE="KEYWORD3">'denorm
<SEQ TYPE="KEYWORD3">'digits
<SEQ TYPE="KEYWORD3">'exponent
<SEQ TYPE="KEYWORD3">'external_tag
<SEQ TYPE="KEYWORD3">'first
<SEQ TYPE="KEYWORD3">'first_bit
<SEQ TYPE="KEYWORD3">'floor
<SEQ TYPE="KEYWORD3">'fore
<SEQ TYPE="KEYWORD3">'fraction
<SEQ TYPE="KEYWORD3">'has_same_storage
<SEQ TYPE="KEYWORD3">'identity
<SEQ TYPE="KEYWORD3">'image
<SEQ TYPE="KEYWORD3">'class'input</SEQ>
<SEQ TYPE="KEYWORD3">'input
<SEQ TYPE="KEYWORD3">'last
<SEQ TYPE="KEYWORD3">'last_bit
<SEQ TYPE="KEYWORD3">'leading_part
<SEQ TYPE="KEYWORD3">'length
<SEQ TYPE="KEYWORD3">'machine
<SEQ TYPE="KEYWORD3">'machine_emax
<SEQ TYPE="KEYWORD3">'machine_emin
<SEQ TYPE="KEYWORD3">'machine_mantissa
<SEQ TYPE="KEYWORD3">'machine_overflows
<SEQ TYPE="KEYWORD3">'machine_radix
<SEQ TYPE="KEYWORD3">'machine_rounding
<SEQ TYPE="KEYWORD3">'machine_rounds
<SEQ TYPE="KEYWORD3">'max
<SEQ TYPE="KEYWORD3">'max_alignment_for_allocation
<SEQ TYPE="KEYWORD3">'max_size_in_storage_elements
<SEQ TYPE="KEYWORD3">'min
<SEQ TYPE="KEYWORD3">'mod
<SEQ TYPE="KEYWORD3">'model
<SEQ TYPE="KEYWORD3">'model_emin
<SEQ TYPE="KEYWORD3">'model_epsilon
<SEQ TYPE="KEYWORD3">'model_mantissa
<SEQ TYPE="KEYWORD3">'model_small
<SEQ TYPE="KEYWORD3">'modulus
<SEQ TYPE="KEYWORD3">'old
<SEQ TYPE="KEYWORD3">'class'output</SEQ>
<SEQ TYPE="KEYWORD3">'output
<SEQ TYPE="KEYWORD3">'overlaps_storage
<SEQ TYPE="KEYWORD3">'partition_id
<SEQ TYPE="KEYWORD3">'pos
<SEQ TYPE="KEYWORD3">'position
<SEQ TYPE="KEYWORD3">'pred
<SEQ TYPE="KEYWORD3">'priority
<SEQ TYPE="KEYWORD3">'range
<SEQ TYPE="KEYWORD3">'class'read</SEQ>
<SEQ TYPE="KEYWORD3">'read
<SEQ TYPE="KEYWORD3">'remainder
<SEQ TYPE="KEYWORD3">'result
<SEQ TYPE="KEYWORD3">'round
<SEQ TYPE="KEYWORD3">'rounding
<SEQ TYPE="KEYWORD3">'safe_first
<SEQ TYPE="KEYWORD3">'safe_last
<SEQ TYPE="KEYWORD3">'scale
<SEQ TYPE="KEYWORD3">'scaling
<SEQ TYPE="KEYWORD3">'signed_zeros
<SEQ TYPE="KEYWORD3">'size
<SEQ TYPE="KEYWORD3">'small
<SEQ TYPE="KEYWORD3">'storage_pool
<SEQ TYPE="KEYWORD3">'storage_size
<SEQ TYPE="KEYWORD3">'stream_size
<SEQ TYPE="KEYWORD3">'succ
<SEQ TYPE="KEYWORD3">'tag
<SEQ TYPE="KEYWORD3">'terminated
<SEQ TYPE="KEYWORD3">'truncation
<SEQ TYPE="KEYWORD3">'unbiased_rounding
<SEQ TYPE="KEYWORD3">'unchecked_access
<SEQ TYPE="KEYWORD3">'val
<SEQ TYPE="KEYWORD3">'valid
<SEQ TYPE="KEYWORD3">'value
<SEQ TYPE="KEYWORD3">'version
<SEQ TYPE="KEYWORD3">'wide_image
<SEQ TYPE="KEYWORD3">'wide_value
<SEQ TYPE="KEYWORD3">'wide_width
<SEQ TYPE="KEYWORD3">'width
<SEQ TYPE="KEYWORD3">'wide_wide_image
<SEQ TYPE="KEYWORD3">'wide_wide_value
<SEQ TYPE="KEYWORD3">'wide_wide_width
<SEQ TYPE="KEYWORD3">'class'write</SEQ>
<SEQ TYPE="KEYWORD3">'write
<!-- Predefined Pragmas -->
<!-- From Annex L of the Ada Reference Manual. -->
<!-- One problem with this definition is that it requires exactly one
space between the pragma keyword and the name of the pragma. -->
<SEQ TYPE="KEYWORD3">pragma all_calls_remote</SEQ>
<SEQ TYPE="KEYWORD3">pragma assert</SEQ>
<SEQ TYPE="KEYWORD3">pragma assertion_policy</SEQ>
<SEQ TYPE="KEYWORD3">pragma asynchronous</SEQ>
<SEQ TYPE="KEYWORD3">pragma atomic</SEQ>
<SEQ TYPE="KEYWORD3">pragma atomic_components</SEQ>
<SEQ TYPE="KEYWORD3">pragma attach_handler</SEQ>
<SEQ TYPE="KEYWORD3">pragma controlled</SEQ>
<SEQ TYPE="KEYWORD3">pragma convention</SEQ>
<SEQ TYPE="KEYWORD3">pragma cpu</SEQ>
<SEQ TYPE="KEYWORD3">pragma default_storage_pool</SEQ>
<SEQ TYPE="KEYWORD3">pragma detect_blocking</SEQ>
<SEQ TYPE="KEYWORD3">pragma discard_names</SEQ>
<SEQ TYPE="KEYWORD3">pragma dispatching_domain</SEQ>
<SEQ TYPE="KEYWORD3">pragma elaborate</SEQ>
<SEQ TYPE="KEYWORD3">pragma elaborate_all</SEQ>
<SEQ TYPE="KEYWORD3">pragma elaborate_body</SEQ>
<SEQ TYPE="KEYWORD3">pragma export</SEQ>
<SEQ TYPE="KEYWORD3">pragma import</SEQ>
<SEQ TYPE="KEYWORD3">pragma independent</SEQ>
<SEQ TYPE="KEYWORD3">pragam independent_components</SEQ>
<SEQ TYPE="KEYWORD3">pragma inline</SEQ>
<SEQ TYPE="KEYWORD3">pragma inspection_point</SEQ>
<SEQ TYPE="KEYWORD3">pragma interrupt_handler</SEQ>
<SEQ TYPE="KEYWORD3">pragma interrupt_priority</SEQ>
<SEQ TYPE="KEYWORD3">pragma linker_options</SEQ>
<SEQ TYPE="KEYWORD3">pragma list</SEQ>
<SEQ TYPE="KEYWORD3">pragma locking_policy</SEQ>
<SEQ TYPE="KEYWORD3">pragma no_return</SEQ>
<SEQ TYPE="KEYWORD3">pragma normalize_scalars</SEQ>
<SEQ TYPE="KEYWORD3">pragma optimize</SEQ>
<SEQ TYPE="KEYWORD3">pragma pack</SEQ>
<SEQ TYPE="KEYWORD3">pragma page</SEQ>
<SEQ TYPE="KEYWORD3">pragma partition_elaboration_policy</SEQ>
<SEQ TYPE="KEYWORD3">pragma preelaborate_initialization</SEQ>
<SEQ TYPE="KEYWORD3">pragma preelaborate</SEQ>
<SEQ TYPE="KEYWORD3">pragma priority</SEQ>
<SEQ TYPE="KEYWORD3">pragma priority_specific_dispatching</SEQ>
<SEQ TYPE="KEYWORD3">pragma profile</SEQ>
<SEQ TYPE="KEYWORD3">pragma pure</SEQ>
<SEQ TYPE="KEYWORD3">pragma queuing_policy</SEQ>
<SEQ TYPE="KEYWORD3">pragma relative_deadline</SEQ>
<SEQ TYPE="KEYWORD3">pragma remote_call_interface</SEQ>
<SEQ TYPE="KEYWORD3">pragma remote_types</SEQ>
<SEQ TYPE="KEYWORD3">pragma restrictions</SEQ>
<SEQ TYPE="KEYWORD3">pragma reviewable</SEQ>
<SEQ TYPE="KEYWORD3">pragma shared_passive</SEQ>
<SEQ TYPE="KEYWORD3">pragma storage_size</SEQ>
<SEQ TYPE="KEYWORD3">pragma suppress</SEQ>
<SEQ TYPE="KEYWORD3">pragma task_dispatching_policy</SEQ>
<SEQ TYPE="KEYWORD3">pragma unchecked_union</SEQ>
<SEQ TYPE="KEYWORD3">pragma unsuppress</SEQ>
<SEQ TYPE="KEYWORD3">pragma volatile</SEQ>
<SEQ TYPE="KEYWORD3">pragma volatile_components</SEQ>
<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
<BEGIN>'
<END>'
</SPAN>
<KEYWORDS>
<!-- Reserved words -->
<!-- The first three are special. Coloring them differently makes it
easier to locate subprograms in the file. -->
<KEYWORD1>entry</KEYWORD1>
<KEYWORD1>function</KEYWORD1>
<KEYWORD1>procedure</KEYWORD1>
<KEYWORD2>abort</KEYWORD2>
<KEYWORD2>abs</KEYWORD2>
<KEYWORD2>abstract</KEYWORD2>
<KEYWORD2>accept</KEYWORD2>
<KEYWORD2>access</KEYWORD2>
<KEYWORD2>aliased</KEYWORD2>
<KEYWORD2>all</KEYWORD2>
<KEYWORD2>and</KEYWORD2>
<KEYWORD2>array</KEYWORD2>
<KEYWORD2>at</KEYWORD2>
<KEYWORD2>begin</KEYWORD2>
<KEYWORD2>body</KEYWORD2>
<KEYWORD2>case</KEYWORD2>
<KEYWORD2>constant</KEYWORD2>
<KEYWORD2>declare</KEYWORD2>
<KEYWORD2>delay</KEYWORD2>
<KEYWORD2>delta</KEYWORD2>
<KEYWORD2>digits</KEYWORD2>
<KEYWORD2>do</KEYWORD2>
<KEYWORD2>else</KEYWORD2>
<KEYWORD2>elsif</KEYWORD2>
<KEYWORD2>end</KEYWORD2>
<KEYWORD2>exception</KEYWORD2>
<KEYWORD2>exit</KEYWORD2>
<KEYWORD2>for</KEYWORD2>
<KEYWORD2>generic</KEYWORD2>
<KEYWORD2>goto</KEYWORD2>
<KEYWORD2>if</KEYWORD2>
<KEYWORD2>in</KEYWORD2>
<KEYWORD2>interface</KEYWORD2>
<KEYWORD2>is</KEYWORD2>
<KEYWORD2>limited</KEYWORD2>
<KEYWORD2>loop</KEYWORD2>
<KEYWORD2>mod</KEYWORD2>
<KEYWORD2>new</KEYWORD2>
<KEYWORD2>not</KEYWORD2>
<KEYWORD2>null</KEYWORD2> <!-- This is also used as an access value. -->
<KEYWORD2>of</KEYWORD2>
<KEYWORD2>or</KEYWORD2>
<KEYWORD2>others</KEYWORD2>
<KEYWORD2>out</KEYWORD2>
<KEYWORD2>overriding</KEYWORD2>
<KEYWORD2>package</KEYWORD2>
<KEYWORD3>pragma</KEYWORD3> <!-- Special case -->
<KEYWORD2>private</KEYWORD2>
<KEYWORD2>protected</KEYWORD2>
<KEYWORD2>raise</KEYWORD2>
<KEYWORD2>range</KEYWORD2>
<KEYWORD2>record</KEYWORD2>
<KEYWORD2>rem</KEYWORD2>
<KEYWORD2>renames</KEYWORD2>
<KEYWORD2>requeue</KEYWORD2>
<KEYWORD2>return</KEYWORD2>
<KEYWORD2>reverse</KEYWORD2>
<KEYWORD2>select</KEYWORD2>
<KEYWORD2>separate</KEYWORD2>
<KEYWORD2>some</KEYWORD2>
<KEYWORD2>subtype</KEYWORD2>
<KEYWORD2>synchronized</KEYWORD2>
<KEYWORD2>tagged</KEYWORD2>
<KEYWORD2>task</KEYWORD2>
<KEYWORD2>terminate</KEYWORD2>
<KEYWORD2>then</KEYWORD2>
<KEYWORD2>type</KEYWORD2>
<KEYWORD2>until</KEYWORD2>
<KEYWORD2>use</KEYWORD2>
<KEYWORD2>when</KEYWORD2>
<KEYWORD2>while</KEYWORD2>
<KEYWORD2>with</KEYWORD2>
<KEYWORD2>xor</KEYWORD2>
<!-- Literals -->
<LITERAL1>false</LITERAL1>
<LITERAL1>true</LITERAL1>
<!-- Pre-defined types (in package Standard). -->
<LITERAL2>address</LITERAL2>
<LITERAL2>boolean</LITERAL2>
<LITERAL2>character</LITERAL2>
<LITERAL2>duration</LITERAL2>
<LITERAL2>float</LITERAL2>
<LITERAL2>integer</LITERAL2>
<LITERAL2>latin_1</LITERAL2>
<LITERAL2>natural</LITERAL2>
<LITERAL2>positive</LITERAL2>
<LITERAL2>string</LITERAL2>
<LITERAL2>time</LITERAL2>
<LITERAL2>wide_character</LITERAL2>
<LITERAL2>wide_wide_character</LITERAL2>
<LITERAL2>wide_string</LITERAL2>
<LITERAL2>wide_wide_string</LITERAL2>
<!-- Pre-defined exceptions (in package Standard). -->
<LITERAL2>constraint_error</LITERAL2>
<LITERAL2>program_error</LITERAL2>
<LITERAL2>storage_error</LITERAL2>
<LITERAL2>tasking_error</LITERAL2>
</KEYWORDS>
</RULES>
</MODE>
¤ Dauer der Verarbeitung: 0.40 Sekunden
(vorverarbeitet)
¤
|
Haftungshinweis
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.
|