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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: cfunctions-0.1.126.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.126.tar.gz
Algorithm Hash digest
SHA256 12ffac034c9ca747cef3d58c0a57d03b1176e2b0ac4dea1b6895762500b3db89
MD5 3f1461bcd6152930f87906a7253c4538
BLAKE2b-256 e3f40c2a620fa29f274a2e8634285e8977d7e36e17f94f8dc78c4d6474f295c6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cfunctions-0.1.126-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.126-py3-none-any.whl
Algorithm Hash digest
SHA256 c746ca95e21d49c57ca4982b81b7f637c73d842fbb5d2f824bdb9ca3b3e8c55c
MD5 a747bd1c63d1ae4c877c580d4b629e74
BLAKE2b-256 997e81c3f25dbed5bf82dc437a461ff549fcdd9f031a189f8c7bbd6a22e43ad4

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