<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Jsonnet - The Data Templating Language</title>
    <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
    <meta name="keywords" content="Jsonnet, JSON, YAML, language, configuration, configuration language, functional, declarative, lazy, structured, elegant, semantics, clean, mixins, inheritance, template, expansion, expand" />
    <meta name="description" content="The Jsonnet language allows elegant and easy description of JSON data." />

    <link rel="icon" type="image/png" href="favicon.png" />

    <link rel="stylesheet" href="prism.css" />
    <link rel="stylesheet" type="text/css" href="doc.css" />

    <script type="text/javascript"
      src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
    </script>

    <script type="text/javascript">
      (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-53570216-1', 'auto');
      ga('send', 'pageview');

    </script>

    <script src="prism.js" type="text/javascript">
    </script>

    <script type="text/javascript">
    Prism.languages.jsonnet = {
      'cppcomment': /\/\/.*/g,
      'comment': /\/\*[\w\W]*?\*\//g,
      'string': /("|')(\\?.)*?\1/g,
      'keyword': /\b(self|super)\b|\$/g,
      'boolean': /\b(true|false)\b/g,
      'constant': /\bnull\b/g,
      'error': /\berror\b/g,
      'special': /\b(local|function|if|then|else|import|importstr|for|in)\b/g,
      'number': /\b[0-9][0-9.eE]*\b/g,
      'operator': /(\+|\*|\/)+/g,
    };
    </script>

    <style type="text/css">
    .token.comment,
    .token.cppcomment {
      color: #040;
    }

    .token.identifier {
      color: #000;
    }
    .token.operator {
      color: #000;
    }

    .token.boolean,
    .token.number,
    .token.constant {
      color: #05a;
    }

    .token.string {
      color: #000048;
    }

    .token.keyword,
    .token.special {
      color: blue;
    }

    .token.error {
      color: red;
    }
    </style>


    <script type="text/javascript">

        var menu_timeout = null;

        function set_visible(menu, b)
        {
            var category = menu.children[0];
            var dropdown = menu.children[1];
            category.style['border-radius'] = b && dropdown != null ? '4px 4px 0px 0px' : '4px';
            if (dropdown != null) {
                dropdown.style.visibility = b ? 'visible' : 'hidden';
            }
        }

        function menu_open(el)
        {
            menu_close_all();
            var menu = el;
            while (menu.id === "") {
                menu = menu.parentNode;
            }
            set_visible(menu, true);
        }

        function menu_leave()
        {
            if (menu_timeout != null) {
                window.clearTimeout(menu_timeout);
            }
            menu_timeout = window.setTimeout(menu_close_all, 300);
        }

        function menu_close_all()
        {
            var mb = document.getElementById("menubar");
            if (mb == null) return;
            var menus = mb.children;
            for (var i = 0 ; i < menus.length ; ++i) {
                set_visible(menus[i], false);
            }
            if (menu_timeout != null) {
                window.clearTimeout(menu_timeout);
                window_timeout = null;
            }
        }

        document.onclick = menu_close_all(); 

    </script>

</head>

<body class="language-jsonnet">

<div class="header">

<div class="tagline"><i>The data templating language</i></div>
<div id="githubmarkbox">
<a href="https://groups.google.com/forum/#!forum/jsonnet"><div id="groupsmark"></div></a>
<a href="http://github.com/google/jsonnet"><div id="githubmark"></div></a>
</div>
<div class="title"><a href="index.html" class="title">Jsonnet</a></div>

<ol id="menubar">

    <li id="menu_userdocs">
        <a href="userdocs.html" onmouseover="menu_open(this)" onmouseout="menu_leave()">User docs</a>
        <div onmouseover="menu_open(this)" onmouseout="menu_leave()">
            <a href="tutorial.html">Tutorial</a>
            <a href="demo.html">Demo</a>
            <a href="stdlib.html">Standard Library</a>
        </div>
    </li>

    <li id="menu_casestudies">
        <a href="casestudies.html" onmouseover="menu_open(this)" onmouseout="menu_leave()">Case Studies</a>
        <div onmouseover="menu_open(this)" onmouseout="menu_leave()">
            <a href="casestudy_fractal.1.html">Fractal</a>
        </div>
    </li>

    <li id="menu_language">
        <a href="language.html" onmouseover="menu_open(this)" onmouseout="menu_leave()">Language</a>
        <div onmouseover="menu_open(this)" onmouseout="menu_leave()">
            <a href="design.html">Design</a>
            <a href="comparisons.html">Comparisons</a>
            <a href="spec.html">Specification</a>
        </div>
    </li>

    <li id="menu_implementation">
        <a href="implementation.html" onmouseover="menu_open(this)" onmouseout="menu_leave()">Implementation</a>
        <div onmouseover="menu_open(this)" onmouseout="menu_leave()">
            <a href="commandline.html">Cmdline Tool</a>
            <a href="bindings.html">Libraries</a>
            <a href="cpp.html">C++ Internals</a>
            <a href="javascript.html">Javascript</a>
            <a href="tests.html">Tests</a>
        </div>
    </li>

    <li id="menu_contributing">
        <a href="contributing.html" onmouseover="menu_open(this)" onmouseout="menu_leave()">Contributing</a>
    </li>

</ol>

<div style="clear: both"></div>

</div>
