]> git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/thrift/lib/haxe/src/org/apache/thrift/protocol/TProtocol.hx
buildsys: switch source download to quincy
[ceph.git] / ceph / src / jaegertracing / thrift / lib / haxe / src / org / apache / thrift / protocol / TProtocol.hx
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 package org.apache.thrift.protocol;
21
22 import haxe.io.Bytes;
23 import org.apache.thrift.TException;
24 import org.apache.thrift.transport.TTransport;
25
26 /**
27 * Protocol interface definition
28 */
29 interface TProtocol {
30
31 function getTransport() : TTransport;
32
33 /**
34 * Writing methods.
35 */
36 function writeMessageBegin(message:TMessage) : Void;
37 function writeMessageEnd() : Void;
38 function writeStructBegin(struct:TStruct) : Void;
39 function writeStructEnd() : Void;
40 function writeFieldBegin(field:TField) : Void;
41 function writeFieldEnd() : Void;
42 function writeFieldStop() : Void;
43 function writeMapBegin(map:TMap) : Void;
44 function writeMapEnd() : Void;
45 function writeListBegin(list:TList) : Void;
46 function writeListEnd() : Void;
47 function writeSetBegin(set:TSet) : Void;
48 function writeSetEnd() : Void;
49 function writeBool(b : Bool) : Void;
50 function writeByte(b : Int) : Void;
51 function writeI16(i16 : Int) : Void;
52 function writeI32(i32 : Int) : Void;
53 function writeI64(i64 : haxe.Int64) : Void;
54 function writeDouble(dub : Float) : Void;
55 function writeString(str : String) : Void;
56 function writeBinary(bin : Bytes) : Void;
57
58 /**
59 * Reading methods.
60 */
61 function readMessageBegin():TMessage;
62 function readMessageEnd() : Void;
63 function readStructBegin():TStruct;
64 function readStructEnd() : Void;
65 function readFieldBegin():TField;
66 function readFieldEnd() : Void;
67 function readMapBegin():TMap;
68 function readMapEnd() : Void;
69 function readListBegin():TList;
70 function readListEnd() : Void;
71 function readSetBegin():TSet;
72 function readSetEnd() : Void;
73 function readBool() : Bool;
74 function readByte() : Int;
75 function readI16() : Int;
76 function readI32() : Int;
77 function readI64() : haxe.Int64;
78 function readDouble() : Float;
79 function readString() : String;
80 function readBinary() : Bytes;
81
82 // recursion tracking
83 function IncrementRecursionDepth() : Void;
84 function DecrementRecursionDepth() : Void;
85 }