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.66.tar.gz (73.9 kB view details)

Uploaded Source

Built Distribution

cfunctions-0.1.66-py3-none-any.whl (72.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cfunctions-0.1.66.tar.gz
  • Upload date:
  • Size: 73.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.7.10

File hashes

Hashes for cfunctions-0.1.66.tar.gz
Algorithm Hash digest
SHA256 10871e54e4d15de2f8581df5e7f5eae24bcbe3a342f25c4753d2d164da8efde5
MD5 5a926cfab0588d50e3806e05b5baa484
BLAKE2b-256 79f9343f912f0042edfebf642b518db7ad2f18aca387f88d75d4f145478612e9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cfunctions-0.1.66-py3-none-any.whl
  • Upload date:
  • Size: 72.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.7.10

File hashes

Hashes for cfunctions-0.1.66-py3-none-any.whl
Algorithm Hash digest
SHA256 12c3ca30e214f2757a146a5c9ef0575bfca2c4251f45078296338146c52b4c88
MD5 27e2ee64201d360bb1f02b06d7d2a81b
BLAKE2b-256 42f62e81597a9df43a8a502404ffec45596c2f9562f064af233109b3af6f3f9f

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