| 76 | |
| 77 | |
| 78 | def _resolve_expression( |
| 79 | value: Expression | Term | ScalarValue | Sequence[float] | Sequence[int] | str | None, |
| 80 | resolve_context: ResolveContext, |
| 81 | *, |
| 82 | treat_str_as_field: bool, |
| 83 | ) -> ResolveResult: |
| 84 | if isinstance(value, Expression): |
| 85 | return value.resolve(resolve_context) |
| 86 | if isinstance(value, Term): |
| 87 | return ResolveResult(term=value) |
| 88 | if isinstance(value, str) and treat_str_as_field: |
| 89 | return F(value).resolve(resolve_context) |
| 90 | return Value(value).resolve(resolve_context) |
| 91 | |
| 92 | |
| 93 | class SearchVectorCombinable(Expression): |