Moving from govendor to dep, updated dependencies (#48)
* Moving from govendor to dep. * Making the pull request template more friendly. * Fixing akward space in PR template. * goimports run on whole project using ` goimports -w $(find . -type f -name '*.go' -not -path "./vendor/*" -not -path "./gen-go/*")` source of command: https://gist.github.com/bgentry/fd1ffef7dbde01857f66
This commit is contained in:
parent
9631aa3aab
commit
8d445c1c77
2186 changed files with 400410 additions and 352 deletions
119
vendor/git.apache.org/thrift.git/lib/ocaml/README.md
generated
vendored
Normal file
119
vendor/git.apache.org/thrift.git/lib/ocaml/README.md
generated
vendored
Normal file
|
@ -0,0 +1,119 @@
|
|||
Thrift OCaml Software Library
|
||||
|
||||
License
|
||||
=======
|
||||
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
|
||||
|
||||
Library
|
||||
=======
|
||||
|
||||
The library abstract classes, exceptions, and general use functions
|
||||
are mostly jammed in Thrift.ml (an exception being
|
||||
TServer).
|
||||
|
||||
Generally, classes are used, however they are often put in their own
|
||||
module along with other relevant types and functions. The classes
|
||||
often called t, exceptions are called E.
|
||||
|
||||
Implementations live in their own files. There is TBinaryProtocol,
|
||||
TSocket, TThreadedServer, TSimpleServer, and TServerSocket.
|
||||
|
||||
A note on making the library: Running make should create native, debug
|
||||
code libraries, and a toplevel.
|
||||
|
||||
|
||||
Struct format
|
||||
-------------
|
||||
Structs are turned into classes. The fields are all option types and
|
||||
are initially None. Write is a method, but reading is done by a
|
||||
separate function (since there is no such thing as a static
|
||||
class). The class type is t and is in a module with the name of the
|
||||
struct.
|
||||
|
||||
|
||||
enum format
|
||||
-----------
|
||||
Enums are put in their own module along with
|
||||
functions to_i and of_i which convert the ocaml types into ints. For
|
||||
example:
|
||||
|
||||
enum Numberz
|
||||
{
|
||||
ONE = 1,
|
||||
TWO,
|
||||
THREE,
|
||||
FIVE = 5,
|
||||
SIX,
|
||||
EIGHT = 8
|
||||
}
|
||||
|
||||
==>
|
||||
|
||||
module Numberz =
|
||||
struct
|
||||
type t =
|
||||
| ONE
|
||||
| TWO
|
||||
| THREE
|
||||
| FIVE
|
||||
| SIX
|
||||
| EIGHT
|
||||
|
||||
let of_i = ...
|
||||
let to_i = ...
|
||||
end
|
||||
|
||||
typedef format
|
||||
--------------
|
||||
Typedef turns into the type declaration:
|
||||
typedef i64 UserId
|
||||
|
||||
==>
|
||||
|
||||
type userid Int64.t
|
||||
|
||||
exception format
|
||||
----------------
|
||||
The same as structs except that the module also has an exception type
|
||||
E of t that is raised/caught.
|
||||
|
||||
For example, with an exception Xception,
|
||||
raise (Xception.E (new Xception.t))
|
||||
and
|
||||
try
|
||||
...
|
||||
with Xception.E e -> ...
|
||||
|
||||
list format
|
||||
-----------
|
||||
Lists are turned into OCaml native lists.
|
||||
|
||||
Map/Set formats
|
||||
---------------
|
||||
These are both turned into Hashtbl.t's. Set values are bool.
|
||||
|
||||
Services
|
||||
--------
|
||||
The client is a class "client" parametrized on input and output
|
||||
protocols. The processor is a class parametrized on a handler. A
|
||||
handler is a class inheriting the iface abstract class. Unlike other
|
||||
implementations, client does not implement iface since iface functions
|
||||
must take option arguments so as to deal with the case where a client
|
||||
does not send all the arguments.
|
Loading…
Add table
Add a link
Reference in a new issue