thrift/tutorial
Sebastian Zenker 042580f534 THRIFT-4762: Applied some C++11 refactorings to the runtime library and compiler (#1719)
* make use of C++11 override keyword
* added const specifier to TTransport::getOrigin()
* added more const correctness to the compiler
* make use of auto keyword
* replaced usage of NULL with nullptr
* make use of explicitly-defaulted function definition
* extended changelog
2019-01-29 09:48:12 -05:00
..
as3 THRIFT-2392: Actionscript tutorial 2014-03-11 22:21:07 -04:00
c_glib configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation 2017-09-09 07:50:54 -07:00
cl THRIFT-4676: Fix intermittent CL build failures 2018-12-05 16:09:10 -05:00
cpp THRIFT-4762: Applied some C++11 refactorings to the runtime library and compiler (#1719) 2019-01-29 09:48:12 -05:00
csharp THRIFT-4753: re-version master to next release 0.13.0 2019-01-25 23:33:54 -05:00
d THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
dart THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
delphi THRIFT-4753: re-version master to next release 0.13.0 2019-01-25 23:33:54 -05:00
erl THRIFT-4426: remove a symbolic link that was checked in 2018-12-27 13:03:23 -05:00
go Replace git.apache.org imports with github.com 2018-10-19 07:48:56 +01:00
haxe THRIFT-4398 Update EXTRA_DIST for "make dist" 2017-12-01 23:01:41 +01:00
hs THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
java THRIFT-(1418|1507|3983|4120|4178|4259|4294): Multiple issues 2018-01-24 12:28:55 -05:00
js THRIFT-4546: replace all git-wip-us.apache.org to github.com 2018-12-28 07:46:47 -05:00
netcore THRIFT-4717: fix up make clean with autoconf 2019-01-25 23:33:54 -05:00
netstd THRIFT-4723 Consolidate C#/netcore into new netstd language target 2019-01-28 23:12:28 +01:00
nodejs configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation 2017-09-09 07:50:54 -07:00
ocaml THRIFT-4753: re-version master to next release 0.13.0 2019-01-25 23:33:54 -05:00
perl THRIFT-4382: Replace the use of Indirect Object Syntax calls to new() 2018-10-17 19:13:45 -04:00
php THRIFT-4459: reduce php library directory depth 2018-01-16 09:22:42 -05:00
py THRIFT-4351: use travis build stages to optimize build, 2017-10-19 11:29:04 -04:00
py.tornado configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation 2017-09-09 07:50:54 -07:00
py.twisted configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation 2017-09-09 07:50:54 -07:00
rb configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation 2017-09-09 07:50:54 -07:00
rs Reformat rust code with rustfmt 1.0 2018-12-16 18:22:04 -05:00
Makefile.am THRIFT-4723 Consolidate C#/netcore into new netstd language target 2019-01-28 23:12:28 +01:00
README.md THRIFT-2407 use markdown (rename README => README.md) 2014-03-19 06:47:47 +01:00
shared.thrift THRIFT-4723 Consolidate C#/netcore into new netstd language target 2019-01-28 23:12:28 +01:00
tutorial.thrift THRIFT-4723 Consolidate C#/netcore into new netstd language target 2019-01-28 23:12:28 +01:00

Thrift Tutorial

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.

Tutorial

  1. First things first, you'll need to install the Thrift compiler and the language libraries. Do that using the instructions in the top level README.md file.

  2. Read tutorial.thrift to learn about the syntax of a Thrift file

  3. Compile the code for the language of your choice:

    $ thrift $ thrift -r --gen cpp tutorial.thrift

  4. Take a look at the generated code.

  5. Look in the language directories for sample client/server code.

  6. That's about it for now. This tutorial is intentionally brief. It should be just enough to get you started and ready to build your own project.