aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/test/indent_SUITE_data/src/simple/simple1_adt.erl
blob: 21a277c1e9783cb647919f43511f3b11b3422c48 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
-module(simple1_adt).

-export([d1/0, d2/0, i/0, n1/0, n2/0, o1/0, o2/0,
         c1/0, c2/0, bit1/0, a/0, i1/0, tuple/0,
         b1/0, b2/0, ty_i1/0]).

-export_type([o1/0, o2/0, d1/0, d2/0]).

-export_type([i1/0, i2/0, di1/0, di2/0]).

-export_type([ty_i1/0, c1/0, c2/0]).

-export_type([b1/0, b2/0]).

-export_type([bit1/0]).

-export_type([tuple1/0, a/0, i/0]).

%% Equal:

-opaque o1() :: a | b | c.

-opaque o2() :: a | b | c.

%% Disjoint:

-opaque d1() :: a | b | c.

-opaque d2() :: d | e | f.

%% One common element:

-opaque c1() :: a | b | c.

-opaque c2() :: c | e | f.

%% Equal integer range:

-opaque i1() :: 1 | 2.

-opaque i2() :: 1 | 2.

%% Disjoint integer range:

-opaque di1() :: 1 | 2.

-opaque di2() :: 3 | 4.


-type ty_i1() :: 1 | 2.

%% Boolean types

-opaque b1() :: boolean().

-opaque b2() :: boolean().

%% Binary types

-opaque bit1() :: binary().

%% Tuple types

-opaque tuple1() :: tuple().

%% Atom type

-opaque a() :: atom().

-opaque i() :: integer().

-spec d1() -> d1().

d1() -> a.

-spec d2() -> d2().

d2() -> d.

-spec i() -> i().

i() ->
    1.

-spec n1() -> o1().

n1() -> a.

-spec n2() -> o2().

n2() -> a.

-spec o1() -> o1().

o1() -> a.

-spec o2() -> o2().

o2() -> a.

-spec c1() -> c1().

c1() -> a.

-spec c2() -> c2().

c2() -> e.

-spec bit1() -> bit1().

bit1() ->
    <<"hej">>.

-spec a() -> a().

a() ->
    e.

-spec i1() -> i1().

i1() -> 1.

-spec tuple() -> tuple1().

tuple() -> {1,2}.

-spec b1() -> b1().

b1() -> true.

-spec b2() -> b2().

b2() -> false.

-spec ty_i1() -> ty_i1().

ty_i1() ->
    1.