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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: cfunctions-0.1.123.tar.gz
  • Upload date:
  • Size: 73.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.3

File hashes

Hashes for cfunctions-0.1.123.tar.gz
Algorithm Hash digest
SHA256 2c6457747bc8980532fab3ef8dcbdda7c9e80e97b8a678328f0a5b8d74cdc6ac
MD5 a330f7e8e64289a7cbfefc1693178b6b
BLAKE2b-256 c8d9683f85b82e9f1b5d495392eae8b795aee92c539b369431f9598d4660ca69

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cfunctions-0.1.123-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.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.3

File hashes

Hashes for cfunctions-0.1.123-py3-none-any.whl
Algorithm Hash digest
SHA256 204f24857e05e05038ef1c38c34a9646434c7a2ad7e7d6af3492d378da9e87eb
MD5 469bb0e2818d78deb5c53cdc93f06552
BLAKE2b-256 dd06e29649980d316e110e625fe3a6415eb4e4980f5a50ddc90f2225fe3b7ee4

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