Skip to main content

cfunctions

Project description

CFunctions

CFunctions (cloud functions, compute functions, construct functions) are a building block of the [constructs programming model] which can be used to package JavaScript code and run it on a cloud system.

Let's take a look at a simple CFunction:

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
{ CFunction } = require("cfunctions")

cfunc = CFunction(
    capture=["x", "y"],
    code="x + y"
)

print("outfile:", cfunc.outfile)
print("env:", cfunc.env)

The output will look like this:

outfile: /tmp/.cf.out.TAJEO8/cf.js
env: { __CF__x__: '100', __CF__y__: '200' }

The cf.js file is a a self-contained JavaScript module which can be loaded through a require() statement and returns an async function that executes the code after binding it from a set of environment variables.

Let's execute our cfunction:

$ export __CF__x__=123
$ export __CF__y__=10
$ node -e "require('/tmp/.cf.out.TAJEO8/cf.js')().then(result => console.log(result))"
12310

The CFunction.exec() static method can also be used to execute the function:

const result = CFunction.exec('/tmp/.cf.out.TAJEO8/cf.js', {
  env: {
    __CF__x__: 123,
    __CF__y__: 10
  }
});

console.log(result);

License

Licensed under the Apache 2.0 license.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cfunctions-0.1.7.tar.gz (68.2 kB view details)

Uploaded Source

Built Distribution

cfunctions-0.1.7-py3-none-any.whl (67.0 kB view details)

Uploaded Python 3

File details

Details for the file cfunctions-0.1.7.tar.gz.

File metadata

  • Download URL: cfunctions-0.1.7.tar.gz
  • Upload date:
  • Size: 68.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.9

File hashes

Hashes for cfunctions-0.1.7.tar.gz
Algorithm Hash digest
SHA256 fe29462d602a9d25c327a42ba9d3b807ca486b8a8c97c82b77a8784d62826c93
MD5 52599cd09e1c0d77397a3281c28597fc
BLAKE2b-256 09c8f2fe90f87317af03bb9c26eb3d82130d484135819487a663f91ebebd706c

See more details on using hashes here.

File details

Details for the file cfunctions-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: cfunctions-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 67.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.9

File hashes

Hashes for cfunctions-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 434bbd082d0cce18eaef4f221471e01d2241f23d37f27239121910f684ed8df9
MD5 a4733e324b952289eba84df11f294eca
BLAKE2b-256 ffa427a422b9d9926cffa1d38c5f77c7ba4084997d20a90c5b4278d33e8018ef

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page