def __init__(self,<EOL>name,<EOL>runtime,<EOL>handler,<EOL>code_abs_path,<EOL>layers,<EOL>memory=None,<EOL>timeout=None,<EOL>env_vars=None):
self.name = name<EOL>self.runtime = runtime<EOL>self.handler = handler<EOL>self.code_abs_path = code_abs_path<EOL>self.layers = layers<EOL>self.memory = memory or self._DEFAULT_MEMORY<EOL>self.timeout = timeout or self._DEFAULT_TIMEOUT_SECONDS<EOL>if not env_vars:<EOL><INDENT>env_vars = EnvironmentVariables(self.memory, self.timeout, self.handler)<EOL><DEDENT>self.env_vars = env_vars<EOL>self.env_vars.handler = self.handler<EOL>self.env_vars.memory = self.memory<EOL>self.env_vars.timeout = self.timeout<EOL>
Initialize the class.

Parameters
----------
name str
    Name of the function
runtime str
    Runtime of function
handler str
    Handler method
code_abs_path str
    Absolute path to the code
layers list(str)
    List of Layers
memory int
    Function memory limit in MB
timeout int
    Function timeout in seconds
env_vars samcli.local.lambdafn.env_vars.EnvironmentVariables
    Optional, Environment variables.
    If it not provided, this class will generate one for you based on the function properties