def get_short_lambda_source(lambda_func: LambdaType) -> Optional[str]:
    """Return the source of a (short) lambda function.
    If it's impossible to obtain, return ``None``.

    The source is returned without the ``lambda`` and signature parts:

    >>> get_short_lambda_source(lambda x, y: x < y)
    'x < y'

    This should work well for most lambda definitions, however for multi-line or highly nested lambdas,
    the source extraction might not succeed.

    Args:
        lambda_func:
            The lambda function.

    Returns:
        The source of the lambda function without its signature.
    """
    try:
        all_source_lines, lnum = inspect.findsource(lambda_func)
        source_lines, _ = inspect.getsourcelines(lambda_func)
    except (IOError, TypeError):
        return None
    all_source_lines = [l.rstrip('\r\n') for l in all_source_lines]
    block_end = lnum + len(source_lines)
    source_ast = None
    for i in range(lnum, -1, -1):
        try:
            block = all_source_lines[i:block_end]
            if block[0].startswith(' ') or block[0].startswith('\t'):
                block.insert(0, 'with 0:')
            source_ast = ast.parse(os.linesep.join(block))
        except (SyntaxError, tokenize.TokenError):
            pass
        else:
            break
    nv = LambdaNodeVisitor(block)
    nv.visit(source_ast)
    lambda_code = lambda_func.__code__
    for candidate_code, lambda_text in nv.lambdas:
        candidate_code = candidate_code.co_consts[0]
        # We don't check for direct equivalence since the flags can be different
        if (candidate_code.co_code == lambda_code.co_code and
            candidate_code.co_consts == lambda_code.co_consts and
            candidate_code.co_names == lambda_code.co_names and
            candidate_code.co_varnames == lambda_code.co_varnames and
            candidate_code.co_cellvars == lambda_code.co_cellvars and
            candidate_code.co_freevars == lambda_code.co_freevars):
            return lambda_text[lambda_text.index(':')+1:].strip()

    return None
Return the source of a (short) lambda function.
    If it's impossible to obtain, return ``None``.

    The source is returned without the ``lambda`` and signature parts:

    >>> get_short_lambda_source(lambda x, y: x < y)
    'x < y'

    This should work well for most lambda definitions, however for multi-line or highly nested lambdas,
    the source extraction might not succeed.

    Args:
        lambda_func:
            The lambda function.

    Returns:
        The source of the lambda function without its signature.