26 lines
712 B
Python
26 lines
712 B
Python
from cpl_query.exceptions import ArgumentNoneException, ExceptionArgument
|
|
from cpl_query.extension.iterable_abc import IterableABC
|
|
|
|
|
|
def element_at_query(_list: IterableABC, _index: int) -> any:
|
|
if _list is None:
|
|
raise ArgumentNoneException(ExceptionArgument.list)
|
|
|
|
if _index is None:
|
|
raise ArgumentNoneException(ExceptionArgument.index)
|
|
|
|
return _list[_index]
|
|
|
|
|
|
def element_at_or_default_query(_list: IterableABC, _index: int) -> any:
|
|
if _list is None:
|
|
raise ArgumentNoneException(ExceptionArgument.list)
|
|
|
|
if _index is None:
|
|
raise ArgumentNoneException(ExceptionArgument.index)
|
|
|
|
try:
|
|
return _list[_index]
|
|
except IndexError:
|
|
return None
|