text/x-java
*.vdm
--
/*
*/
end{vdm_al}
begin{vdm_al}
\\( # leading backslash
[\\\"\'nrbtf] | # escaped character
[0-9]{1,3} | # latin encoded char
u[0-9]{1,4} # unicode char
)
"
"
\%{escaped-character}
'(\%{escaped-character}|.)'
end{vdm_al}
begin{vdm_al}
nil
false
true
(\b([0-9]+|0[xX][0-9a-fA-F]+)[Ll]?\b|
\b(([0-9]+[Ee][-]?[0-9]+|
([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFdD]?|
[0-9]+[FfDd]))
bool
int
nat
nat1
real
rat
char
token
comp
and
or
in set
not in set
union
inter
munion
subset
psubset
div
mod
rem
is not yet specified
for all
in set
be st
not in set
abs
all
always
and
as
be
bool
by
card
cases
char
comp
compose
conc
dcl
def
definitions
dinter
div
dlmodule
do
dom
dunion
elems
else
elseif
end
error
errs
exists
exists1
exit
exports
ext
false
floor
for
forall
from
functions
hd
if
imports
in
inds
init
inmap
int
inter
inv
inverse
iota
lambda
len
let
map
measure
merge
mod
module
mu
munion
nat
nat1
nil
not
of
operations
or
others
post
power
pre
psubset
rat
rd
real
rem
renamed
return
reverse
rng
seq
seq1
set
skip
specified
st
state
struct
subset
then
tixe
tl
to
token
trap
traces
true
types
undefined
union
uselib
values
while
with
wr
yet
RESULT
true
false
nil
abs
card
floor
hd
tl
len
elems
inds
conc
dom
rng
merge
not
inverse
dunion
dinter
power