Commit | Line | Data |
---|---|---|
970ed795 | 1 | /////////////////////////////////////////////////////////////////////////////// |
3abe9331 | 2 | // Copyright (c) 2000-2015 Ericsson Telecom AB |
970ed795 EL |
3 | // All rights reserved. This program and the accompanying materials |
4 | // are made available under the terms of the Eclipse Public License v1.0 | |
5 | // which accompanies this distribution, and is available at | |
6 | // http://www.eclipse.org/legal/epl-v10.html | |
7 | /////////////////////////////////////////////////////////////////////////////// | |
8 | #ifndef _Common_PredefFunc_HH | |
9 | #define _Common_PredefFunc_HH | |
10 | ||
11 | #include "Int.hh" | |
12 | #include "Real.hh" | |
13 | #include "../common/CharCoding.hh" | |
14 | ||
15 | class string; | |
16 | class ustring; | |
17 | ||
18 | namespace Common { | |
19 | ||
20 | extern char hexdigit_to_char(unsigned char hexdigit); | |
21 | extern unsigned char char_to_hexdigit(char c); | |
22 | ||
23 | extern int_val_t rem(const int_val_t& left, const int_val_t& right); | |
24 | extern int_val_t mod(const int_val_t& left, const int_val_t& right); | |
25 | extern string* to_uppercase(const string& value); | |
26 | extern string* not4b_bit(const string& bstr); | |
27 | extern string* not4b_hex(const string& hstr); | |
28 | extern string* and4b(const string& left, const string& right); | |
29 | extern string* or4b(const string& left, const string& right); | |
30 | extern string* xor4b(const string& left, const string& right); | |
31 | extern string* shift_left(const string& value, const Int& count); | |
32 | extern string* shift_right(const string& value, const Int& count); | |
33 | extern string* rotate_left(const string& value, const Int& count); | |
34 | extern string* rotate_right(const string& value, const Int& count); | |
35 | extern ustring* rotate_left(const ustring& value, const Int& count); | |
36 | extern ustring* rotate_right(const ustring& value, const Int& count); | |
37 | ||
38 | extern int_val_t* bit2int(const string& bstr); | |
39 | extern int_val_t* hex2int(const string& hstr); | |
40 | extern Int unichar2int(const ustring& ustr); | |
41 | extern string* int2bit(const int_val_t& value, const Int& length); | |
42 | extern string* int2hex(const int_val_t& value, const Int& length); | |
43 | extern ustring* int2unichar(const Int& value); | |
44 | extern string* oct2char(const string& ostr); | |
45 | extern string* char2oct(const string& cstr); | |
46 | extern string* bit2hex(const string& bstr); | |
47 | extern string* hex2oct(const string& hstr); | |
48 | extern string* asn_hex2oct(const string& hstr); | |
49 | extern string* bit2oct(const string& bstr); | |
50 | extern string* asn_bit2oct(const string& bstr); | |
51 | extern string* hex2bit(const string& hstr); | |
52 | extern Real int2float(const int_val_t& value); | |
53 | extern int_val_t* float2int(const Real& value, const Location& loc); | |
54 | extern string* float2str(const Real& value); | |
55 | extern string* regexp(const string& instr, const string& expression, | |
56 | const Int& groupno); | |
57 | extern ustring* regexp(const ustring& instr, const ustring& expression, | |
58 | const Int& groupno); | |
59 | extern string* remove_bom(const string& encoded_value); | |
60 | extern string* get_stringencoding(const string& encoded_value); | |
61 | extern ustring decode_utf8(const string & ostr, CharCoding::CharCodingType expected_coding); | |
62 | } | |
63 | ||
64 | #endif // _Common_PredefFunc_HH |