a
554325746@qq.com
2019-10-24 c61e776980f038bb0e195f7753a3d7e127d6028f
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
139
140
141
142
143
144
/*
 * %CopyrightBegin%
 *
 * Copyright Ericsson AB 2000-2013. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * %CopyrightEnd%
 */
package com.ericsson.otp.erlang;
 
/**
 * Provides a collection of constants used when encoding and decoding Erlang
 * terms.
 */
public class OtpExternal {
    /**
     * The tag used for small integers
     */
    public static final int smallIntTag = 97;
    /**
     * The tag used for integers
     */
    public static final int intTag = 98;
    /**
     * The tag used for floating point numbers
     */
    public static final int floatTag = 99;
    public static final int newFloatTag = 70;
    /**
     * The tag used for atoms
     */
    public static final int atomTag = 100;
    /**
     * The tag used for old stype references
     */
    public static final int refTag = 101;
    /**
     * The tag used for ports
     */
    public static final int portTag = 102;
    /**
     * The tag used for PIDs
     */
    public static final int pidTag = 103;
    /**
     * The tag used for small tuples
     */
    public static final int smallTupleTag = 104;
    /**
     * The tag used for large tuples
     */
    public static final int largeTupleTag = 105;
    /**
     * The tag used for empty lists
     */
    public static final int nilTag = 106;
    /**
     * The tag used for strings and lists of small integers
     */
    public static final int stringTag = 107;
    /**
     * The tag used for non-empty lists
     */
    public static final int listTag = 108;
    /**
     * The tag used for binaries
     */
    public static final int binTag = 109;
    /**
     * The tag used for bitstrs
     */
    public static final int bitBinTag = 77;
    /**
     * The tag used for small bignums
     */
    public static final int smallBigTag = 110;
    /**
     * The tag used for large bignums
     */
    public static final int largeBigTag = 111;
    /**
     * The tag used for old new Funs
     */
    public static final int newFunTag = 112;
    /**
     * The tag used for external Funs (M:F/A)
     */
    public static final int externalFunTag = 113;
    /**
     * The tag used for new style references
     */
    public static final int newRefTag = 114;
    /**
     * The tag used for maps
     */
    public static final int mapTag = 116;
    /**
     * The tag used for old Funs
     */
    public static final int funTag = 117;
    /**
     * The tag used for unicode atoms
     */
    public static final int atomUtf8Tag = 118;
    /**
     * The tag used for small unicode atoms
     */
    public static final int smallAtomUtf8Tag = 119;
    /**
     * The tag used for compressed terms
     */
    public static final int compressedTag = 80;
    /**
     * The version number used to mark serialized Erlang terms
     */
    public static final int versionTag = 131;
    /**
     * The largest value that can be encoded as an integer
     */
    public static final int erlMax = (1 << 27) - 1;
    /**
     * The smallest value that can be encoded as an integer
     */
    public static final int erlMin = -(1 << 27);
    /**
     * The longest allowed Erlang atom
     */
    public static final int maxAtomLength = 255;
 
    // no constructor
    private OtpExternal() {
    }
}