1 | /**
|
---|
2 | * @author ETSI
|
---|
3 | * @version $URL: svn+ssh://vcs.etsi.org/TTCN3/LIB/Ttcn3LibCommon/trunk/ttcn/LibCommon_TextStrings.ttcn $
|
---|
4 | * $Id: LibCommon_TextStrings.ttcn 35 2009-06-11 12:23:24Z kremer $
|
---|
5 | * @desc A collection of text string type and value definitions which
|
---|
6 | * may be useful in the implementation of any TTCN-3 test
|
---|
7 | * suite. "Text string" refers to TTCN-3 charstring and universal
|
---|
8 | * charstring types.
|
---|
9 | * @remark End users should be aware that any changes made to the in
|
---|
10 | * definitions this module may be overwritten in future releases.
|
---|
11 | * End users are encouraged to contact the distributers of this
|
---|
12 | * module regarding their modifications or additions so that future
|
---|
13 | * updates will include your changes.
|
---|
14 | */
|
---|
15 | module LibCommon_TextStrings {
|
---|
16 |
|
---|
17 | /**
|
---|
18 | * @desc These constants can be used to add special characters into
|
---|
19 | * TTCN-3 text strings by using the concatenation operator.
|
---|
20 | * Example use:
|
---|
21 | * var charstring v_text := "Hi!" & c_CRLF & "Hello!";
|
---|
22 | */
|
---|
23 | group usefulConstants {
|
---|
24 |
|
---|
25 | const charstring c_NUL := oct2char('00'O);
|
---|
26 | const charstring c_SOH := oct2char('01'O);
|
---|
27 | const charstring c_STX := oct2char('02'O);
|
---|
28 | const charstring c_ETX := oct2char('03'O);
|
---|
29 | const charstring c_EOT := oct2char('04'O);
|
---|
30 | const charstring c_ENQ := oct2char('05'O);
|
---|
31 | const charstring c_ACK := oct2char('06'O);
|
---|
32 | const charstring c_BEL := oct2char('07'O);
|
---|
33 | const charstring c_BS := oct2char('08'O);
|
---|
34 | const charstring c_TAB := oct2char('09'O);
|
---|
35 | const charstring c_LF := oct2char('0A'O);
|
---|
36 | const charstring c_VT := oct2char('0B'O);
|
---|
37 | const charstring c_FF := oct2char('0C'O);
|
---|
38 | const charstring c_CR := oct2char('0D'O);
|
---|
39 | const charstring c_SO := oct2char('0E'O);
|
---|
40 | const charstring c_SI := oct2char('0F'O);
|
---|
41 | const charstring c_DLE := oct2char('10'O);
|
---|
42 | const charstring c_DC1 := oct2char('11'O);
|
---|
43 | const charstring c_DC2 := oct2char('12'O);
|
---|
44 | const charstring c_DC3 := oct2char('13'O);
|
---|
45 | const charstring c_DC4 := oct2char('14'O);
|
---|
46 | const charstring c_NAK := oct2char('15'O);
|
---|
47 | const charstring c_SYN := oct2char('16'O);
|
---|
48 | const charstring c_ETB := oct2char('17'O);
|
---|
49 | const charstring c_CAN := oct2char('18'O);
|
---|
50 | const charstring c_EM := oct2char('19'O);
|
---|
51 | const charstring c_SUB := oct2char('1A'O);
|
---|
52 | const charstring c_ESC := oct2char('1B'O);
|
---|
53 | const charstring c_FS := oct2char('1C'O);
|
---|
54 | const charstring c_GS := oct2char('1D'O);
|
---|
55 | const charstring c_RS := oct2char('1E'O);
|
---|
56 | const charstring c_US := oct2char('1F'O);
|
---|
57 | const charstring c_DEL := oct2char('7F'O);
|
---|
58 |
|
---|
59 | const charstring c_CRLF := oct2char('0D'O) & oct2char('0A'O);
|
---|
60 |
|
---|
61 | } // end group usefulConstants
|
---|
62 |
|
---|
63 | /**
|
---|
64 | * @remark Number in name indicates string length in number of
|
---|
65 | * _characters_
|
---|
66 | */
|
---|
67 | group textStringSubTypes {
|
---|
68 |
|
---|
69 | type charstring String1 length(1) with { encode "length(1)"};
|
---|
70 | type charstring String2 length(2) with { encode "length(2)"};
|
---|
71 | type charstring String3 length(3) with { encode "length(3)"};
|
---|
72 | type charstring String4 length(4) with { encode "length(4)"};
|
---|
73 | type charstring String5 length(5) with { encode "length(5)"};
|
---|
74 | type charstring String6 length(6) with { encode "length(6)"};
|
---|
75 | type charstring String7 length(7) with { encode "length(7)"};
|
---|
76 | type charstring String8 length(8) with { encode "length(8)"};
|
---|
77 | type charstring String9 length(9) with { encode "length(9)"};
|
---|
78 | type charstring String10 length(10) with { encode "length(10)"};
|
---|
79 | type charstring String11 length(11) with { encode "length(11)"};
|
---|
80 | type charstring String12 length(12) with { encode "length(12)"};
|
---|
81 | type charstring String13 length(13) with { encode "length(13)"};
|
---|
82 | type charstring String14 length(14) with { encode "length(14)"};
|
---|
83 | type charstring String15 length(15) with { encode "length(15)"};
|
---|
84 | type charstring String16 length(16) with { encode "length(16)"};
|
---|
85 |
|
---|
86 | type charstring String1To13 length(1..13) with {encode "length(1..13)"};
|
---|
87 | type charstring String1To63 length(1..63) with {encode "length(1..63)"};
|
---|
88 | type charstring String1To64 length(1..64) with {encode "length(1..64)"};
|
---|
89 | type charstring String1To127 length(1..127) with {encode "length(1..127)"};
|
---|
90 | type charstring String1To128 length(1..128) with {encode "length(1..128)"};
|
---|
91 | type charstring String1to255 length(1..255) with {encode "length(1..255)"};
|
---|
92 | type charstring String5to253 length (5..253) with {encode "length(5..253)"};
|
---|
93 |
|
---|
94 | } // end stringSubTypes
|
---|
95 |
|
---|
96 | group usefulTextStringTypes {
|
---|
97 |
|
---|
98 | type universal charstring UnicodeText;
|
---|
99 |
|
---|
100 | type universal charstring UnicodeText1to255 length(1..255)
|
---|
101 | with {encode "length(1..255)"};
|
---|
102 |
|
---|
103 | /**
|
---|
104 | * @desc Subtyping can not be used in this type definition to ensure
|
---|
105 | * values of this type are really alphanumeric.
|
---|
106 | * Instead either codecs or a template have
|
---|
107 | * to be used for this purpose. The type is kept here to ensure
|
---|
108 | * backward compatibility.
|
---|
109 | * @see LibCommon_TextStrings.mw_isAlphaNum
|
---|
110 | */
|
---|
111 | type charstring AlphaNum with { encode "alphanumeric"};
|
---|
112 | type AlphaNum AlphaNum2 length(2) with { encode "alphanumeric;length(2)"};
|
---|
113 | type AlphaNum AlphaNum1To32 length(1..32) with {encode "alphanumeric;length(1..32)"};
|
---|
114 |
|
---|
115 | } // end group usefulTextStringTypes
|
---|
116 |
|
---|
117 | group usefulTextStringTemplates {
|
---|
118 |
|
---|
119 | template charstring mw_isAlphaNum := pattern "([0-9]|[a-z]|[A-Z])+";
|
---|
120 |
|
---|
121 | } // end group usefulTextStringTemplates
|
---|
122 |
|
---|
123 | } // end module LibCommon_TextStrings
|
---|