Update stubs

This commit is contained in:
Trinh Anh Ngoc
2023-10-04 15:55:46 +07:00
parent 505cd8becb
commit 60c677b7dc
3 changed files with 33 additions and 41 deletions

View File

@@ -23,11 +23,6 @@ from .tools import date_utils, float_utils
_FieldT = TypeVar("_FieldT", bound=Field) _FieldT = TypeVar("_FieldT", bound=Field)
_FieldValueT = TypeVar("_FieldValueT") _FieldValueT = TypeVar("_FieldValueT")
_ModelT = TypeVar("_ModelT", bound=BaseModel) _ModelT = TypeVar("_ModelT", bound=BaseModel)
_Selection = list[tuple[str, str]]
_SelectionRaw = _Selection | Callable[..., _Selection] | str
_Domain = list
_DomainRaw = _Domain | Callable[..., _Domain]
_CommandList = list[tuple[BaseModel, list]]
_SeqIntT = TypeVar("_SeqIntT", bound=Sequence[int]) _SeqIntT = TypeVar("_SeqIntT", bound=Sequence[int])
DATE_LENGTH: int DATE_LENGTH: int
@@ -342,11 +337,11 @@ class Image(Binary):
class Selection(Field[str]): class Selection(Field[str]):
type: str type: str
column_type: tuple[str, str] column_type: tuple[str, str]
selection: _SelectionRaw selection: list | Callable | str
validate: bool validate: bool
ondelete: dict[str, Any] | None ondelete: dict[str, Any] | None
def __init__( def __init__(
self, selection: _SelectionRaw = ..., string: str = ..., **kwargs self, selection: list | Callable | str = ..., string: str = ..., **kwargs
) -> None: ... ) -> None: ...
def setup_nonrelated(self, model: BaseModel) -> None: ... def setup_nonrelated(self, model: BaseModel) -> None: ...
def setup_related(self, model: BaseModel): ... def setup_related(self, model: BaseModel): ...
@@ -376,12 +371,12 @@ class Reference(Selection):
class _Relational(Field[BaseModel]): class _Relational(Field[BaseModel]):
relational: bool relational: bool
domain: _DomainRaw domain: list | Callable
context: dict context: dict
check_company: bool check_company: bool
comodel_name: str comodel_name: str
def setup_nonrelated(self, model: BaseModel) -> None: ... def setup_nonrelated(self, model: BaseModel) -> None: ...
def get_domain_list(self, model: BaseModel) -> _Domain: ... def get_domain_list(self, model: BaseModel) -> list: ...
class Many2one(_Relational): class Many2one(_Relational):
type: str type: str
@@ -500,7 +495,7 @@ class _RelationalMulti(_Relational):
def get_depends(self, model: BaseModel): ... def get_depends(self, model: BaseModel): ...
def create(self, record_values: list[tuple[BaseModel, Any]]) -> None: ... def create(self, record_values: list[tuple[BaseModel, Any]]) -> None: ...
def write(self, records: BaseModel, value): ... def write(self, records: BaseModel, value): ...
def write_batch(self, records_commands_list: _CommandList, create: bool = ...): ... def write_batch(self, records_commands_list: list, create: bool = ...): ...
class One2many(_RelationalMulti): class One2many(_RelationalMulti):
type: str type: str
@@ -518,8 +513,8 @@ class One2many(_RelationalMulti):
def update_db(self, model: BaseModel, columns) -> None: ... def update_db(self, model: BaseModel, columns) -> None: ...
def get_domain_list(self, records: BaseModel): ... def get_domain_list(self, records: BaseModel): ...
def read(self, records: BaseModel): ... def read(self, records: BaseModel): ...
def write_real(self, records_commands_list: _CommandList, create: bool = ...): ... def write_real(self, records_commands_list: list, create: bool = ...): ...
def write_new(self, records_commands_list: _CommandList): ... def write_new(self, records_commands_list: list): ...
class Many2many(_RelationalMulti): class Many2many(_RelationalMulti):
type: str type: str
@@ -543,8 +538,8 @@ class Many2many(_RelationalMulti):
@property @property
def groupable(self) -> bool: ... def groupable(self) -> bool: ...
def read(self, records: BaseModel) -> None: ... def read(self, records: BaseModel) -> None: ...
def write_real(self, records_commands_list: _CommandList, create: bool = ...): ... def write_real(self, records_commands_list: list, create: bool = ...): ...
def write_new(self, records_commands_list: _CommandList): ... def write_new(self, records_commands_list: list): ...
class Id(Field[int]): class Id(Field[int]):
type: str type: str

View File

@@ -29,7 +29,6 @@ from .tools.query import Query
_T = TypeVar("_T") _T = TypeVar("_T")
_ModelT = TypeVar("_ModelT", bound=BaseModel) _ModelT = TypeVar("_ModelT", bound=BaseModel)
_Model2T = TypeVar("_Model2T", bound=BaseModel) _Model2T = TypeVar("_Model2T", bound=BaseModel)
_Domain = list
regex_order: Pattern[str] regex_order: Pattern[str]
regex_object_name: Pattern[str] regex_object_name: Pattern[str]
@@ -174,11 +173,11 @@ class BaseModel(metaclass=MetaModel):
def fields_get_keys(self) -> list[str]: ... def fields_get_keys(self) -> list[str]: ...
def _rec_name_fallback(self) -> str: ... def _rec_name_fallback(self) -> str: ...
def user_has_groups(self, groups: str) -> bool: ... def user_has_groups(self, groups: str) -> bool: ...
def search_count(self, domain: _Domain, limit: int | None = ...) -> int: ... def search_count(self, domain: list, limit: int | None = ...) -> int: ...
@overload @overload
def search( def search(
self: _ModelT, self: _ModelT,
domain: _Domain, domain: list,
offset: int = ..., offset: int = ...,
limit: int | None = ..., limit: int | None = ...,
order: str | None = ..., order: str | None = ...,
@@ -187,7 +186,7 @@ class BaseModel(metaclass=MetaModel):
@overload @overload
def search( def search(
self, self,
domain: _Domain, domain: list,
offset: int = ..., offset: int = ...,
limit: int | None = ..., limit: int | None = ...,
order: str | None = ..., order: str | None = ...,
@@ -199,14 +198,14 @@ class BaseModel(metaclass=MetaModel):
def name_search( def name_search(
self, self,
name: str = ..., name: str = ...,
args: _Domain | None = ..., args: list | None = ...,
operator: str = ..., operator: str = ...,
limit: int = ..., limit: int = ...,
) -> list[tuple[int, str]]: ... ) -> list[tuple[int, str]]: ...
def _name_search( def _name_search(
self, self,
name: str = ..., name: str = ...,
args: _Domain | None = ..., args: list | None = ...,
operator: str = ..., operator: str = ...,
limit: int = ..., limit: int = ...,
name_get_uid: int | None = ..., name_get_uid: int | None = ...,
@@ -215,11 +214,11 @@ class BaseModel(metaclass=MetaModel):
@classmethod @classmethod
def clear_caches(cls) -> None: ... def clear_caches(cls) -> None: ...
def _read_group_expand_full( def _read_group_expand_full(
self, groups: _ModelT, domain: _Domain | None, order: str | None self, groups: _ModelT, domain: list | None, order: str | None
) -> _ModelT: ... ) -> _ModelT: ...
def _read_group_fill_results( def _read_group_fill_results(
self, self,
domain: _Domain, domain: list,
groupby: str, groupby: str,
remaining_groupbys: list[str], remaining_groupbys: list[str],
aggregated_fields: list[str], aggregated_fields: list[str],
@@ -249,11 +248,11 @@ class BaseModel(metaclass=MetaModel):
self, key, value, groupby_dict: dict[str, dict[str, Any]] self, key, value, groupby_dict: dict[str, dict[str, Any]]
) -> Any: ... ) -> Any: ...
def _read_group_format_result( def _read_group_format_result(
self, data: dict, annotated_groupbys: list[dict], groupby: list, domain: _Domain self, data: dict, annotated_groupbys: list[dict], groupby: list, domain: list
) -> dict: ... ) -> dict: ...
def _read_group( def _read_group(
self, self,
domain: _Domain, domain: list,
fields: list[str], fields: list[str],
groupby: str | list[str], groupby: str | list[str],
offset: int = ..., offset: int = ...,
@@ -263,7 +262,7 @@ class BaseModel(metaclass=MetaModel):
) -> list[dict[str, Any]]: ... ) -> list[dict[str, Any]]: ...
def read_group( def read_group(
self, self,
domain: _Domain, domain: list,
fields: list[str], fields: list[str],
groupby: str | list[str], groupby: str | list[str],
offset: int = ..., offset: int = ...,
@@ -273,7 +272,7 @@ class BaseModel(metaclass=MetaModel):
) -> list[dict[str, Any]]: ... ) -> list[dict[str, Any]]: ...
def _read_group_raw( def _read_group_raw(
self, self,
domain: _Domain, domain: list,
fields: list[str], fields: list[str],
groupby: str | list[str], groupby: str | list[str],
offset: int = ..., offset: int = ...,
@@ -355,7 +354,7 @@ class BaseModel(metaclass=MetaModel):
def _load_records_write(self, values: dict[str, Any]) -> None: ... def _load_records_write(self, values: dict[str, Any]) -> None: ...
def _load_records_create(self, values: list[dict[str, Any]]): ... def _load_records_create(self, values: list[dict[str, Any]]): ...
def _load_records(self, data_list: list[dict], update: bool = ...) -> BaseModel: ... def _load_records(self, data_list: list[dict], update: bool = ...) -> BaseModel: ...
def _where_calc(self, domain: _Domain, active_test: bool = ...) -> Query: ... def _where_calc(self, domain: list, active_test: bool = ...) -> Query: ...
def _check_qorder(self, word: str) -> bool: ... def _check_qorder(self, word: str) -> bool: ...
def _apply_ir_rules(self, query: Query, mode: str = ...) -> None: ... def _apply_ir_rules(self, query: Query, mode: str = ...) -> None: ...
def _generate_m2o_order_by( def _generate_m2o_order_by(
@@ -377,14 +376,14 @@ class BaseModel(metaclass=MetaModel):
def _generate_order_by(self, order_spec: str | None, query: Query) -> str: ... def _generate_order_by(self, order_spec: str | None, query: Query) -> str: ...
def _flush_search( def _flush_search(
self, self,
domain: _Domain, domain: list,
fields: Sequence[str] | None = ..., fields: Sequence[str] | None = ...,
order: str | None = ..., order: str | None = ...,
seen: set | None = ..., seen: set | None = ...,
) -> None: ... ) -> None: ...
def _search( def _search(
self: _ModelT, self: _ModelT,
domain: _Domain, domain: list,
offset: int = ..., offset: int = ...,
limit: int | None = ..., limit: int | None = ...,
order: str | None = ..., order: str | None = ...,
@@ -408,7 +407,7 @@ class BaseModel(metaclass=MetaModel):
def is_transient(cls) -> bool: ... def is_transient(cls) -> bool: ...
def search_read( def search_read(
self, self,
domain: _Domain | None = ..., domain: list | None = ...,
fields: list[str] | None = ..., fields: list[str] | None = ...,
offset: int = ..., offset: int = ...,
limit: int | None = ..., limit: int | None = ...,
@@ -458,7 +457,7 @@ class BaseModel(metaclass=MetaModel):
def filtered(self: _ModelT, func: Callable[[_ModelT], bool]) -> _ModelT: ... def filtered(self: _ModelT, func: Callable[[_ModelT], bool]) -> _ModelT: ...
@overload @overload
def filtered(self: _ModelT, func: str) -> _ModelT: ... def filtered(self: _ModelT, func: str) -> _ModelT: ...
def filtered_domain(self: _ModelT, domain: _Domain) -> _ModelT: ... def filtered_domain(self: _ModelT, domain: list) -> _ModelT: ...
@overload @overload
def sorted( def sorted(
self: _ModelT, key: Callable[[_ModelT], Any] = ..., reverse: bool = ... self: _ModelT, key: Callable[[_ModelT], Any] = ..., reverse: bool = ...

View File

@@ -5,8 +5,6 @@ from ..models import BaseModel
from ..sql_db import Cursor from ..sql_db import Cursor
from ..tools.query import Query from ..tools.query import Query
_Domain = list
NOT_OPERATOR: str NOT_OPERATOR: str
OR_OPERATOR: str OR_OPERATOR: str
AND_OPERATOR: str AND_OPERATOR: str
@@ -20,12 +18,12 @@ FALSE_LEAF: tuple
TRUE_DOMAIN: list[tuple] TRUE_DOMAIN: list[tuple]
FALSE_DOMAIN: list[tuple] FALSE_DOMAIN: list[tuple]
def normalize_domain(domain: _Domain) -> _Domain: ... def normalize_domain(domain: list) -> list: ...
def is_false(model, domain: _Domain) -> bool: ... def is_false(model, domain: list) -> bool: ...
def combine(operator: str, unit, zero, domains: list[_Domain]) -> _Domain: ... def combine(operator: str, unit, zero, domains: list[list]) -> list: ...
def AND(domains: list[_Domain]) -> _Domain: ... def AND(domains: list[list]) -> list: ...
def OR(domains: list[_Domain]) -> _Domain: ... def OR(domains: list[list]) -> list: ...
def distribute_not(domain: _Domain) -> _Domain: ... def distribute_not(domain: list) -> list: ...
def normalize_leaf(element): ... def normalize_leaf(element): ...
def is_operator(element) -> bool: ... def is_operator(element) -> bool: ...
def is_leaf(element, internal: bool = ...) -> bool: ... def is_leaf(element, internal: bool = ...) -> bool: ...
@@ -36,12 +34,12 @@ def get_unaccent_wrapper(cr: Cursor) -> Callable[[Any], str]: ...
class expression: class expression:
root_model: BaseModel root_model: BaseModel
root_alias: str | None root_alias: str | None
expression: _Domain expression: list
query: Query | None query: Query | None
result: tuple[str, list] result: tuple[str, list]
def __init__( def __init__(
self, self,
domain: _Domain, domain: list,
model: BaseModel, model: BaseModel,
alias: str | None = ..., alias: str | None = ...,
query: Query | None = ..., query: Query | None = ...,