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

Uploaded Source

Built Distribution

cfunctions-0.1.28-py3-none-any.whl (71.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cfunctions-0.1.28.tar.gz
Algorithm Hash digest
SHA256 0f52e442e1a20c05e9333fb73dc82f76b61047256b6184a9258a8ee8b989499d
MD5 0951d0f74fdfede06d9c7bcdeefe13fb
BLAKE2b-256 2d3f4dbf63d53dbdac5fedfff049db14a15d04000d01beae13977ddb3c187ce9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cfunctions-0.1.28-py3-none-any.whl
Algorithm Hash digest
SHA256 5f61e2b1792f9ce250de26f2d6c3e1674a5d4046f2fa51a39b030d9812bf375e
MD5 051c13319a68cca0c185c6b04120f192
BLAKE2b-256 2baa4cc2506f9f9657d7a04a7ddc4b5e00ccb0dacbc17a083edecfc4a6ba39f4

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