blob: 0e8271dc193978dfb922b4bdd3889bd8c3495a0c [file] [log] [blame]
Nobuaki Sukegawa10308cb2016-02-03 01:57:03 +09001#
2# Licensed to the Apache Software Foundation (ASF) under one
3# or more contributor license agreements. See the NOTICE file
4# distributed with this work for additional information
5# regarding copyright ownership. The ASF licenses this file
6# to you under the Apache License, Version 2.0 (the
7# "License"); you may not use this file except in compliance
8# with the License. You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing,
13# software distributed under the License is distributed on an
14# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15# KIND, either express or implied. See the License for the
16# specific language governing permissions and limitations
17# under the License.
18#
19
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090020import sys
21
22if sys.version_info[0] == 2:
23
Nobuaki Sukegawa10308cb2016-02-03 01:57:03 +090024 from cStringIO import StringIO as BufferIO
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090025
Nobuaki Sukegawa10308cb2016-02-03 01:57:03 +090026 def binary_to_str(bin_val):
27 return bin_val
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090028
Nobuaki Sukegawa10308cb2016-02-03 01:57:03 +090029 def str_to_binary(str_val):
30 return str_val
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090031
Neil Williams66a44c52018-08-13 16:12:24 -070032 def byte_index(bytes_val, i):
33 return ord(bytes_val[i])
34
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090035else:
36
Nobuaki Sukegawad479e232016-02-28 11:28:19 +090037 from io import BytesIO as BufferIO # noqa
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090038
Nobuaki Sukegawa10308cb2016-02-03 01:57:03 +090039 def binary_to_str(bin_val):
Nobuaki Sukegawa7af189a2016-02-11 16:21:01 +090040 return bin_val.decode('utf8')
Nobuaki Sukegawa760511f2015-11-06 21:24:16 +090041
Nobuaki Sukegawa10308cb2016-02-03 01:57:03 +090042 def str_to_binary(str_val):
Nobuaki Sukegawa7af189a2016-02-11 16:21:01 +090043 return bytes(str_val, 'utf8')
Neil Williams66a44c52018-08-13 16:12:24 -070044
45 def byte_index(bytes_val, i):
46 return bytes_val[i]