1 /**
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 
20 #include <ruby.h>
21 #ifdef HAVE_RUBY_ENCODING_H
22 #include <ruby/encoding.h>
23 #endif
24 #include <constants.h>
25 
force_binary_encoding(VALUE buffer)26 VALUE force_binary_encoding(VALUE buffer) {
27   return rb_funcall(thrift_bytes_module, force_binary_encoding_id, 1, buffer);
28 }
29 
convert_to_utf8_byte_buffer(VALUE string)30 VALUE convert_to_utf8_byte_buffer(VALUE string) {
31   return rb_funcall(thrift_bytes_module, convert_to_utf8_byte_buffer_id, 1, string);
32 }
33 
convert_to_string(VALUE utf8_buffer)34 VALUE convert_to_string(VALUE utf8_buffer) {
35   return rb_funcall(thrift_bytes_module, convert_to_string_id, 1, utf8_buffer);
36 }
37