Skip to content

Add support for Jsonnet TLAs and clean up cfg tests.#1

Open
brettviren wants to merge 3 commits intomasterfrom
tla
Open

Add support for Jsonnet TLAs and clean up cfg tests.#1
brettviren wants to merge 3 commits intomasterfrom
tla

Conversation

@brettviren
Copy link
Copy Markdown
Owner

This requires Jsonnet 0.14.0 which is not yet available in UPS-land.

Jsonnet C++ library has support for a feature called "Top-Level
Arguments" (tla). This PR exposes this support through WCT.

TLA requires a Jsonnet file that results in just a single function. Eg:

$ cat a.jsonnet

function(name, port) {
    name: name,
    port: port
}

Ignoring TLA for a moment, we can import this file into some other
Jsonnet file as normal so that we might call this function with
hard-coded "name" and "port" values.

Or, we can provide the "TLAs" in three different ways: as string or code
values directly on the command line or as code values in a file:

Example with TLA as a string and as code:

$ jsonnet --tla-str name="My Name" --tla-code port=9999 a.jsonnet

{
   "name": "My Name",
   "port": 9999
}

Example with TLA as code on CLI and from yet another file that gives
multiple port numbers as a JSON array:

$ cat ports.json

[1234, 5678]

$ jsonnet --tla-code name='"My Name"' --tla-code-file port=ports.json a.jsonnet

{
   "name": "My Name",
   "port": [
      1234,
      5678
   ]
}

brettviren pushed a commit that referenced this pull request Dec 9, 2019
Adds config.h and test for fftw3 threads
brettviren pushed a commit that referenced this pull request Apr 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants