aws lambda function code example

Example 1: aws lambda function arguments

The runtime passes three arguments to the handler method. 

The first argument is the event object, which contains information from the invoker.
The invoker passes this information as a JSON-formatted string when it calls Invoke, and the runtime converts it to an object.
When an AWS service invokes your function, the event structure varies by service.

The second argument is the context object, which contains information about the invocation, function, and execution environment.
In the preceding example, the function gets the name of the log stream from the context object and returns it to the invoker.

The third argument, callback, is a function that you can call in non-async handlers to send a response.
The callback function takes two arguments: an Error and a response. When you call it, Lambda waits for the event loop to be empty and then returns the response or error to the invoker.
The response object must be compatible with JSON.stringify.

Example 2: whats a lambda

x = lambda a, b, c, d, e, f: a + b + c + d + e + f
print(x(31231, 312, 312, 31, 12, 31))

Example 3: aws lambda tutorial

callback();                // It will return success, but no indication to the caller
callback(null);            // It will return success, but no indication to the caller
callback(null, "success"); // It will return the success indication to the caller
callback(error);           //  It will return the error indication to the caller

Example 4: lambda function example

x = lambda a, b : a * b
print(x(5, 6))

Example 5: whats a lambda

// C++ program to demonstrate lambda expression in C++
#include <bits/stdc++.h>
using namespace std;
  
// Function to print vector
void printVector(vector<int> v)
{
    // lambda expression to print vector
    for_each(v.begin(), v.end(), [](int i)
    {
        std::cout << i << " ";
    });
    cout << endl;
}
  
int main()
{
    vector<int> v {4, 1, 3, 5, 2, 3, 1, 7};
  
    printVector(v);
  
    // below snippet find first number greater than 4
    // find_if searches for an element for which
    // function(third argument) returns true
    vector<int>:: iterator p = find_if(v.begin(), v.end(), [](int i)
    {
        return i > 4;
    });
    cout << "First number greater than 4 is : " << *p << endl;
  
  
    // function to sort vector, lambda expression is for sorting in
    // non-decreasing order Compiler can make out return type as
    // bool, but shown here just for explanation
    sort(v.begin(), v.end(), [](const int& a, const int& b) -> bool
    {
        return a > b;
    });
  
    printVector(v);
  
    // function to count numbers greater than or equal to 5
    int count_5 = count_if(v.begin(), v.end(), [](int a)
    {
        return (a >= 5);
    });
    cout << "The number of elements greater than or equal to 5 is : "
         << count_5 << endl;
  
    // function for removing duplicate element (after sorting all
    // duplicate comes together)
    p = unique(v.begin(), v.end(), [](int a, int b)
    {
        return a == b;
    });
  
    // resizing vector to make size equal to total different number
    v.resize(distance(v.begin(), p));
    printVector(v);
  
    // accumulate function accumulate the container on the basis of
    // function provided as third argument
    int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int f = accumulate(arr, arr + 10, 1, [](int i, int j)
    {
        return i * j;
    });
  
    cout << "Factorial of 10 is : " << f << endl;
  
    //     We can also access function by storing this into variable
    auto square = [](int i)
    {
        return i * i;
    };
  
    cout << "Square of 5 is : " << square(5) << endl;
}

Example 6: why aws lambda is called lambda

In programming, a Lambda expression (or function) is just an anonymous function, i.e., a function with no name.