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

Uploaded Source

Built Distribution

cfunctions-0.1.54-py3-none-any.whl (71.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cfunctions-0.1.54.tar.gz
  • Upload date:
  • Size: 72.8 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.54.tar.gz
Algorithm Hash digest
SHA256 a9d14b2dd654a9ca94d54668a36fae8cc48e15ad17c9483e77fc7c269b7d1451
MD5 6d894595badd771f428f77b31080baa8
BLAKE2b-256 5e49c0e7f66c7947ca027da132d4da42adb265b8969e124afc02556b1ac05bf9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cfunctions-0.1.54-py3-none-any.whl
  • Upload date:
  • Size: 71.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.54-py3-none-any.whl
Algorithm Hash digest
SHA256 ee7b77b27ba1fd6dce7c8241c334063b3118364042056966fcc227a6c9fe1c6d
MD5 ef1e6719886d1dde72ea075fea23c118
BLAKE2b-256 188ab048a6bbaf7caf5e96e8d73bc049b294666ddbe93c410ad8ecf27423465b

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