blob: e816d790465fcb86fcd1c5301bd1eeeab2bb9413 [file] [log] [blame]
David Reiss5e6637b2010-08-30 22:05:18 +00001%%
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%% Signature specifications for protocol implementations.
21
22-ifndef(THRIFT_PROTOCOL_IMPL_INCLUDED).
23-define(THRIFT_PROTOCOL_IMPL_INCLUDED, true).
24
25-spec flush_transport(state()) -> ok.
26-spec close_transport(state()) -> ok.
David Reissee933982010-08-30 22:05:22 +000027
David Reiss5e6637b2010-08-30 22:05:18 +000028-spec write(state(), term()) -> ok | {error, _Reason}.
David Reissee933982010-08-30 22:05:22 +000029
30-spec read
31 (state(), non_neg_integer()) -> {ok, binary()} | {error, _Reason};
32 (state(), tprot_empty_tag()) -> ok | {error, _Reason};
33 (state(), tprot_header_tag()) -> tprot_header_val() | {error, _Reason};
34 (state(), tprot_data_tag()) -> {ok, term()} | {error, _Reason}.
David Reiss5e6637b2010-08-30 22:05:18 +000035
36
37-endif.