<!-- 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: Grammar of the schema language</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__grammar.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="headertitle"> <div class="title">Grammar of the schema language </div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><p>schema = include* ( namespace_decl | type_decl | enum_decl | root_decl | file_extension_decl | file_identifier_decl | attribute_decl | object )*</p> <p>include = <code>include</code> string_constant <code>;</code></p> <p>namespace_decl = <code>namespace</code> ident ( <code>.</code> ident )* <code>;</code></p> <p>attribute_decl = <code>attribute</code> string_constant <code>;</code></p> <p>type_decl = ( <code>table</code> | <code>struct</code> ) ident metadata <code>{</code> field_decl+ <code>}</code></p> <p>enum_decl = ( <code>enum</code> | <code>union</code> ) ident [ <code>:</code> type ] metadata <code>{</code> commasep( enumval_decl ) <code>}</code></p> <p>root_decl = <code>root_type</code> ident <code>;</code></p> <p>field_decl = ident <code>:</code> type [ <code>=</code> scalar ] metadata <code>;</code></p> <p>type = <code>bool</code> | <code>byte</code> | <code>ubyte</code> | <code>short</code> | <code>ushort</code> | <code>int</code> | <code>uint</code> | <code>float</code> | <code>long</code> | <code>ulong</code> | <code>double</code> | <code>string</code> | <code>[</code> type <code>]</code> | ident</p> <p>enumval_decl = ident [ <code>=</code> integer_constant ]</p> <p>metadata = [ <code>(</code> commasep( ident [ <code>:</code> single_value ] ) <code>)</code> ]</p> <p>scalar = integer_constant | float_constant</p> <p>object = { commasep( ident <code>:</code> value ) }</p> <p>single_value = scalar | string_constant</p> <p>value = single_value | object | <code>[</code> commasep( value ) <code>]</code></p> <p>commasep(x) = [ x ( <code>,</code> x )* ]</p> <p>file_extension_decl = <code>file_extension</code> string_constant <code>;</code></p> <p>file_identifier_decl = <code>file_identifier</code> string_constant <code>;</code></p> <p>integer_constant = -?[0-9]+ | <code>true</code> | <code>false</code></p> <p>float_constant = -?[0-9]+.[0-9]+((e|E)(+|-)?[0-9]+)? </p> </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>