diff --git a/docs/html/index.html b/docs/html/index.html index 07d36bbc230fe9dbc88ca24266368209d65abb1d..634adef3a583c9c72bf00ce8b13ef269b63b0661 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -97,6 +97,7 @@ $(document).ready(function(){initNavTree('index.html','');}); <li>How to <a href="md__cpp_usage.html">use the generated C++ code</a> in your own programs.</li> <li>How to <a href="md__java_usage.html">use the generated Java/C# code</a> in your own programs.</li> <li>How to <a href="md__go_usage.html">use the generated Go code</a> in your own programs.</li> +<li><a href="md__support.html">Support matrix</a> for platforms/languages/features.</li> <li>Some <a href="md__benchmarks.html">benchmarks</a> showing the advantage of using FlatBuffers.</li> <li>A <a href="md__white_paper.html">white paper</a> explaining the "why" of FlatBuffers.</li> <li>A description of the <a href="md__internals.html">internals</a> of FlatBuffers.</li> diff --git a/docs/html/md__support.html b/docs/html/md__support.html new file mode 100644 index 0000000000000000000000000000000000000000..3fcb4da9809f6bf67df9135e1fc535b248ec57ed --- /dev/null +++ b/docs/html/md__support.html @@ -0,0 +1,116 @@ +<!-- HTML header for doxygen 1.8.6--> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> +<meta http-equiv="X-UA-Compatible" content="IE=9"/> +<meta name="generator" content="Doxygen 1.8.7"/> +<title>FlatBuffers: Platform / Language / Feature support</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="navtree.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="resize.js"></script> +<script type="text/javascript" src="navtree.js"></script> +<script type="text/javascript"> + $(document).ready(initResizable); + $(window).load(resizeHeight); +</script> +<link href="style.css" rel="stylesheet" type="text/css" /> +<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,400italic,500,500italic,700,700italic|Roboto+Mono:400,700" rel="stylesheet"> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea" style="height: 110px;"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <td id="commonprojectlogo"> + <img alt="Logo" src="fpl_logo_small.png"/> + </td> + <td style="padding-left: 0.5em;"> + <div id="projectname">FlatBuffers + </div> + <div style="font-size:12px;"> + An open source project by <a href="https://developers.google.com/games/#Tools">FPL</a>. + </div> + </td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.8.7 --> +</div><!-- top --> +<div id="side-nav" class="ui-resizable side-nav-resizable"> + <div id="nav-tree"> + <div id="nav-tree-contents"> + <div id="nav-sync" class="sync"></div> + </div> + </div> + <div id="splitbar" style="-moz-user-select:none;" + class="ui-resizable-handle"> + </div> +</div> +<script type="text/javascript"> +$(document).ready(function(){initNavTree('md__support.html','');}); +</script> +<div id="doc-content"> +<div class="header"> + <div class="headertitle"> +<div class="title">Platform / Language / Feature support </div> </div> +</div><!--header--> +<div class="contents"> +<div class="textblock"><p>FlatBuffers is actively being worked on, which means that certain platform / language / feature combinations may not be available yet.</p> +<p>This page tries to track those issues, to make informed decisions easier. In general:</p> +<ul> +<li>Languages: language support beyond the ones created by the original FlatBuffer authors typically depends on community contributions.</li> +<li>Features: C++ was the first language supported, since our original target was high performance game development. It thus has the richest feature set, and is likely most robust. Other languages are catching up however.</li> +<li>Platforms: All language implementations are typically portable to most platforms, unless where noted otherwise.</li> +</ul> +<p>NOTE: this table is a start, it needs to be extended.</p> +<table class="doxtable"> +<tr> +<th>Feature </th><th>C++ </th><th>Java </th><th>C# </th><th>Go </th><th>Python </th><th>JS </th></tr> +<tr> +<td>Codegen for all basic features </td><td>Yes </td><td>Yes </td><td>Yes </td><td>Yes </td><td>Yes </td><td>WIP </td></tr> +<tr> +<td>JSON parsing </td><td>Yes </td><td>No </td><td>No </td><td>No </td><td>No </td><td>No </td></tr> +<tr> +<td>Simple mutation </td><td>Yes </td><td>WIP </td><td>WIP </td><td>No </td><td>No </td><td>No </td></tr> +<tr> +<td>Reflection </td><td>Yes </td><td>No </td><td>No </td><td>No </td><td>No </td><td>No </td></tr> +<tr> +<td>Buffer verifier </td><td>Yes </td><td>No </td><td>No </td><td>No </td><td>No </td><td>No </td></tr> +<tr> +<td>Testing: basic </td><td>Yes </td><td>Yes </td><td>Yes </td><td>Yes </td><td>Yes </td><td>WIP </td></tr> +<tr> +<td>Testing: fuzz </td><td>Yes </td><td>No </td><td>No </td><td>Yes </td><td>Yes </td><td>No </td></tr> +<tr> +<td>Performance: </td><td>Superb </td><td>Great </td><td>Great </td><td>Great </td><td>Ok </td><td>? </td></tr> +<tr> +<td>Platform: Windows </td><td>VS2010 </td><td>Yes </td><td>Yes </td><td>? </td><td>? </td><td>? </td></tr> +<tr> +<td>Platform: Linux </td><td>GCC282 </td><td>Yes </td><td>? </td><td>Yes </td><td>Yes </td><td>? </td></tr> +<tr> +<td>Platform: OS X </td><td>Xcode4 </td><td>? </td><td>? </td><td>? </td><td>Yes </td><td>? </td></tr> +<tr> +<td>Platform: Android </td><td>NDK10d </td><td>Yes </td><td>? </td><td>? </td><td>? </td><td>? </td></tr> +<tr> +<td>Platform: iOS </td><td>? </td><td>? </td><td>? </td><td>? </td><td>? </td><td>? </td></tr> +<tr> +<td>Engine: Unity </td><td>? </td><td>? </td><td>Yes </td><td>? </td><td>? </td><td>? </td></tr> +</table> +</div></div><!-- contents --> +</div><!-- doc-content --> +<!-- Google Analytics --> +<script> + (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ + (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), + m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) + })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); + ga('create', 'UA-49880327-7', 'auto'); + ga('send', 'pageview'); +</script> +</body> +</html> diff --git a/docs/html/navtree.js b/docs/html/navtree.js index 58fba48aba681809b9fad5461f3c71348e957593..0bbc4dc2adade502d57a726756d8099b3930316d 100644 --- a/docs/html/navtree.js +++ b/docs/html/navtree.js @@ -8,6 +8,7 @@ var NAVTREE = [ "Use in Go", "md__go_usage.html", null ], [ "Use in Java/C-sharp", "md__java_usage.html", null ], [ "Use in Python", "md__python_usage.html", null ], + [ "Platform / Language / Feature support", "md__support.html", null ], [ "Benchmarks", "md__benchmarks.html", null ], [ "FlatBuffers white paper", "md__white_paper.html", null ], [ "FlatBuffer Internals", "md__internals.html", null ], diff --git a/docs/html/navtreeindex0.js b/docs/html/navtreeindex0.js index 92e8403cda23683b6df9d5ba9aeaabdea4ea2c76..912552ff2df56d6f253e4ed80a525f5782ac7eda 100644 --- a/docs/html/navtreeindex0.js +++ b/docs/html/navtreeindex0.js @@ -1,16 +1,17 @@ var NAVTREEINDEX0 = { "index.html":[], -"md__benchmarks.html":[7], +"md__benchmarks.html":[8], "md__building.html":[0], "md__compiler.html":[1], "md__cpp_usage.html":[3], "md__go_usage.html":[4], -"md__grammar.html":[10], -"md__internals.html":[9], +"md__grammar.html":[11], +"md__internals.html":[10], "md__java_usage.html":[5], "md__python_usage.html":[6], "md__schemas.html":[2], -"md__white_paper.html":[8], +"md__support.html":[7], +"md__white_paper.html":[9], "pages.html":[] }; diff --git a/docs/html/pages.html b/docs/html/pages.html index 5cefb95b287915c65412a19b97fb2dac606c40e8..fef29f969778eeff700bd57a35a37b105a0c8067 100644 --- a/docs/html/pages.html +++ b/docs/html/pages.html @@ -70,10 +70,11 @@ $(document).ready(function(){initNavTree('pages.html','');}); <tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__go_usage.html" target="_self">Use in Go</a></td><td class="desc"></td></tr> <tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__java_usage.html" target="_self">Use in Java/C-sharp</a></td><td class="desc"></td></tr> <tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__python_usage.html" target="_self">Use in Python</a></td><td class="desc"></td></tr> -<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__benchmarks.html" target="_self">Benchmarks</a></td><td class="desc"></td></tr> -<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__white_paper.html" target="_self">FlatBuffers white paper</a></td><td class="desc"></td></tr> -<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__internals.html" target="_self">FlatBuffer Internals</a></td><td class="desc"></td></tr> -<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__grammar.html" target="_self">Grammar of the schema language</a></td><td class="desc"></td></tr> +<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__support.html" target="_self">Platform / Language / Feature support</a></td><td class="desc"></td></tr> +<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__benchmarks.html" target="_self">Benchmarks</a></td><td class="desc"></td></tr> +<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__white_paper.html" target="_self">FlatBuffers white paper</a></td><td class="desc"></td></tr> +<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__internals.html" target="_self">FlatBuffer Internals</a></td><td class="desc"></td></tr> +<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="md__grammar.html" target="_self">Grammar of the schema language</a></td><td class="desc"></td></tr> </table> </div><!-- directory --> </div><!-- contents --> diff --git a/docs/source/FlatBuffers.md b/docs/source/FlatBuffers.md index 8e78337f4e7d063b8d5bdc0180201274068c1573..b7708695145d4414e6d870c62f1e364ebff7dc36 100644 --- a/docs/source/FlatBuffers.md +++ b/docs/source/FlatBuffers.md @@ -115,6 +115,7 @@ sections provide a more in-depth usage guide. programs. - How to [use the generated Go code](md__go_usage.html) in your own programs. +- [Support matrix](md__support.html) for platforms/languages/features. - Some [benchmarks](md__benchmarks.html) showing the advantage of using FlatBuffers. - A [white paper](md__white_paper.html) explaining the "why" of FlatBuffers. diff --git a/docs/source/Support.md b/docs/source/Support.md new file mode 100755 index 0000000000000000000000000000000000000000..f5c4018a7d2a4aa08b2d3243efdde356e5063c60 --- /dev/null +++ b/docs/source/Support.md @@ -0,0 +1,37 @@ +# Platform / Language / Feature support + +FlatBuffers is actively being worked on, which means that certain platform / +language / feature combinations may not be available yet. + +This page tries to track those issues, to make informed decisions easier. +In general: + + * Languages: language support beyond the ones created by the original + FlatBuffer authors typically depends on community contributions. + * Features: C++ was the first language supported, since our original + target was high performance game development. It thus has the richest + feature set, and is likely most robust. Other languages are catching up + however. + * Platforms: All language implementations are typically portable to most + platforms, unless where noted otherwise. + +NOTE: this table is a start, it needs to be extended. + +Feature | C++ | Java | C# | Go | Python | JS +------------------------------ | ------ | ------ | ------ | ------ | ------ | ------ +Codegen for all basic features | Yes | Yes | Yes | Yes | Yes | WIP +JSON parsing | Yes | No | No | No | No | No +Simple mutation | Yes | WIP | WIP | No | No | No +Reflection | Yes | No | No | No | No | No +Buffer verifier | Yes | No | No | No | No | No +Testing: basic | Yes | Yes | Yes | Yes | Yes | WIP +Testing: fuzz | Yes | No | No | Yes | Yes | No +Performance: | Superb | Great | Great | Great | Ok | ? +Platform: Windows | VS2010 | Yes | Yes | ? | ? | ? +Platform: Linux | GCC282 | Yes | ? | Yes | Yes | ? +Platform: OS X | Xcode4 | ? | ? | ? | Yes | ? +Platform: Android | NDK10d | Yes | ? | ? | ? | ? +Platform: iOS | ? | ? | ? | ? | ? | ? +Engine: Unity | ? | ? | Yes | ? | ? | ? + + diff --git a/docs/source/doxyfile b/docs/source/doxyfile index 808c77c56409305118f2af68474cecc8cc7f83b6..2cb373bc6b3e2dc206bcb1257168b3065820c005 100755 --- a/docs/source/doxyfile +++ b/docs/source/doxyfile @@ -751,6 +751,7 @@ INPUT = "FlatBuffers.md" \ "GoUsage.md" \ "JavaUsage.md" \ "PythonUsage.md" \ + "Support.md" \ "Benchmarks.md" \ "WhitePaper.md" \ "Internals.md" \