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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cfunctions-0.1.89.tar.gz
Algorithm Hash digest
SHA256 1dd9c3a3eb5b0d273ef25326113ff14c579abf100d38b0a6254925bcf9c15bb8
MD5 0889d7b736908355f09eca70c9d66abd
BLAKE2b-256 b4d6e40ae2c825c8e4cb3ee8970bec11c0b45047de116041da1bd78c2c89e91f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cfunctions-0.1.89-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.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.10

File hashes

Hashes for cfunctions-0.1.89-py3-none-any.whl
Algorithm Hash digest
SHA256 960c3c7ae6fd3b52037f3497c88e549b30d78c4f971e34bb22704bf9ece8317d
MD5 0c2555ddcaf8ef0bb8a45e17718ccec7
BLAKE2b-256 e8cc4884dee5519237e854a4d09b9482e016832a27c8ea78389daec96766f6e6

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