| 1088 | |
| 1089 | |
| 1090 | class GetExpression(ColumnExpression): |
| 1091 | _object: ColumnExpression |
| 1092 | _index: ColumnExpression |
| 1093 | _default: ColumnExpression |
| 1094 | _check_if_exists: bool |
| 1095 | _const_index: int | str | None |
| 1096 | |
| 1097 | def __init__( |
| 1098 | self, |
| 1099 | object: ColumnExpression, |
| 1100 | index: ColumnExpression | int | str, |
| 1101 | default: ColumnExpression | Value = None, |
| 1102 | check_if_exists=True, |
| 1103 | ) -> None: |
| 1104 | super().__init__() |
| 1105 | self._object = object |
| 1106 | self._index = ColumnExpression._wrap(index) |
| 1107 | self._default = ColumnExpression._wrap(default) |
| 1108 | self._check_if_exists = check_if_exists |
| 1109 | if isinstance(self._index, ColumnConstExpression) and isinstance( |
| 1110 | self._index._val, (int, str) |
| 1111 | ): |
| 1112 | self._const_index = self._index._val |
| 1113 | else: |
| 1114 | self._const_index = None |
| 1115 | |
| 1116 | def _to_internal(self) -> InternalColExpr: |
| 1117 | return InternalColExpr.build( |
| 1118 | type(self), self._object, self._index, self._default, self._check_if_exists |
| 1119 | ) |
| 1120 | |
| 1121 | @property |
| 1122 | def _deps(self) -> tuple[ColumnExpression, ...]: |
| 1123 | return (self._object, self._index, self._default) |
| 1124 | |
| 1125 | |
| 1126 | ReturnTypeFunType = Callable[[tuple[Any, ...]], Any] |
no outgoing calls
no test coverage detected