Slang Documentation

Index

There are currently 71 Slang operators with 29 tags

Boolean operators

There are 1 operators tagged with boolean

Evaluates an expression.

Compression operators

There are 2 operators tagged with compression

Packs a stream of binary content into a zip archive.
Unpacks a zip archive and emits a stream of files and their binary content.

Control operators

There are 5 operators tagged with control

Emits items of a stream to either outgoing stream depending on the control value.
Emits a constant value for each item.
Merges two streams using a compare delegate deciding which item has precedence.
Frees a semaphore token.
Tries to acquire semaphore token.

Convert operators

There are 4 operators tagged with convert

Takes a stream and emits a map of items, selected by given indices.
Takes a map and emits a stream of key-value pairs.
Takes a map of items and serializes them into a stream.
Takes a map and emits a stream of key-value pairs.

Csv operators

There are 2 operators tagged with csv

Reads a CSV file and emits a stream of lines, separated into columns.
Encodes streams into a single string.

Data operators

There are 8 operators tagged with data

Emits a value previously saved for each item.
Emits a constant value for each item.
Stores a value for later use.
Reduces the items of a stream pairwise using a reducer delegate.
Generates a random UUID.
Uses an iterator delegate to aggregate items of a stream.
Converts the type of a value.
Lets an iterator delegate process a state until the controller tells it to stop.

Database operators

There are 12 operators tagged with database

Executes an HGet command at the specified Redis server.
Executes an LPush command at the specified Redis server.
Reads an item from memory by key string.
Executes an subscribe command at the specified Redis server.
Executes an HSet command at the specified Redis server.
Subscribes at a Kafka topic.
Queries an SQL query on a relational database and emits the result set.
Executes a Set command at the specified Redis server.
Executes an HIncr command at the specified Redis server.
Executes a Get command at the specified Redis server.
Executes an SQL query on a relational database.
Writes an item to memory and associates it with a key string.

Email operators

There are 1 operators tagged with email

Sends an email.

Encoding operators

There are 7 operators tagged with encoding

Reads a CSV file and emits a stream of lines, separated into columns.
Decodes Excel data into a stream of sheets, each being a 2d-stream of cells.
Decodes a JSON string and emits the corresponding Slang data.
Encodes Slang data into a JSON string.
Encodes a Slang map into the corresponding URL-encoded string.
Encodes streams into a single string.
Select values based json path expression from a JSON document.

File operators

There are 4 operators tagged with file

Reads the contents of a file and emits them.
Appends binary data to a file or creates it if non existent.
Reads the contents of a file line by line and emits them as stream.
Creates or replaces a file and writes binary data to it.

Function operators

There are 1 operators tagged with function

Evaluates an expression.

Http operators

There are 4 operators tagged with http

Decodes Excel data into a stream of sheets, each being a 2d-stream of cells.
Starts an HTTP server, uses a handler delegate to process requests.
Sends an HTTP request.
Encodes a Slang map into the corresponding URL-encoded string.

Image operators

There are 2 operators tagged with image

Reads an encoded image binary and emits its pixels as stream of rgb values.
Takes pixels as stream of rgb values and encodes it into an image binary.

Json operators

There are 3 operators tagged with json

Encodes Slang data into a JSON string.
Select values based json path expression from a JSON document.
Decodes a JSON string and emits the corresponding Slang data.

Kafka operators

There are 1 operators tagged with kafka

Subscribes at a Kafka topic.

Math operators

There are 1 operators tagged with math

Evaluates an expression.

Memory operators

There are 2 operators tagged with memory

Reads an item from memory by key string.
Writes an item to memory and associates it with a key string.

Mqtt operators

There are 2 operators tagged with mqtt

Subscribes at a given topic, behaves like an MQTT client.
Publishes an MQTT message at a given topic.

Network operators

There are 5 operators tagged with network

Subscribes at a given topic, behaves like an MQTT client.
Starts an HTTP server, uses a handler delegate to process requests.
Sends an HTTP request.
Sends an email.
Publishes an MQTT message at a given topic.

Random operators

There are 1 operators tagged with random

Generates a random UUID.

Redis operators

There are 7 operators tagged with redis

Executes an HGet command at the specified Redis server.
Executes an LPush command at the specified Redis server.
Executes a Set command at the specified Redis server.
Executes an HSet command at the specified Redis server.
Executes a Get command at the specified Redis server.
Executes an HIncr command at the specified Redis server.
Executes an subscribe command at the specified Redis server.

Smtp operators

There are 1 operators tagged with smtp

Sends an email.

Stream operators

There are 15 operators tagged with stream

Takes a stream and emits a map of items, selected by given indices.
Concatenates two streams.
Takes a map and emits a stream of key-value pairs.
Transforms a stream by iterating it using an iterator delegate.
Emits a sub-stream of another stream.
Takes a map of items and serializes them into a stream.
Collects items from a stream until released.
Takes a streams and emits distinct items.
Takes a map and emits a stream of key-value pairs.
Lets an iterator delegate process a state until the controller tells it to stop.
Takes a stream of key-value pairs and emits the value with the given key.
Releases windows of items collected before.
Reduces the items of a stream pairwise using a reducer delegate.
Cuts a stream into windows of a certain size and emits them.
Uses an iterator delegate to aggregate items of a stream.

String operators

There are 6 operators tagged with string

Tells if a string contains another string.
Replaces placeholders in a given string with given values.
Splits a string at a given separator and emits its pieces as stream.
Tells if a string begins with another string.
Places values formatted in a C-like manner inside a string.
Tells if a string ends with another string.

Sync operators

There are 2 operators tagged with sync

Tries to acquire semaphore token.
Frees a semaphore token.

System operators

There are 2 operators tagged with system

Log
Logs any value passed through the configured logger.
Executes a shell command on the host system.

Time operators

There are 5 operators tagged with time

Takes an item and emits it again after a given number of milliseconds has passed.
Emits the current UNIX timestamp in milliseconds.
Takes a string containing date and time and emits its parsed values.
Takes a UNIX crontab string, sends triggers to its handler delegate accordingly.
Now
Emits the current date and time.

Window operators

There are 3 operators tagged with window

Collects items from a stream until released.
Releases windows of items collected before.
Cuts a stream into windows of a certain size and emits them.

Zip operators

There are 2 operators tagged with zip

Packs a stream of binary content into a zip archive.
Unpacks a zip archive and emits a stream of files and their binary content.