Skip to content

Commit

Permalink
Add basic stub for characteristic (#771)
Browse files Browse the repository at this point in the history
  • Loading branch information
alexjurkiewicz authored and gvanrossum committed Dec 24, 2016
1 parent 7853c26 commit 8e9c53f
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions third_party/2and3/characteristic/__init__.pyi
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
from typing import Sequence, Callable, Union, Any, Optional, AnyStr, TypeVar, Type

def with_repr(attrs: Sequence[Union[AnyStr, Attribute]]) -> Callable[..., Any]: ...
def with_cmp(attrs: Sequence[Union[AnyStr, Attribute]]) -> Callable[..., Any]: ...
def with_init(attrs: Sequence[Union[AnyStr, Attribute]]) -> Callable[..., Any]: ...
def immutable(attrs: Sequence[Union[AnyStr, Attribute]]) -> Callable[..., Any]: ...

def strip_leading_underscores(attribute_name: AnyStr) -> AnyStr: ...

NOTHING = Any

T = TypeVar('T')

def attributes(
attrs: Sequence[Union[AnyStr, Attribute]],
apply_with_cmp: bool = True,
apply_with_init: bool = True,
apply_with_repr: bool = True,
apply_immutable: bool = False,
store_attributes: Optional[Callable[[type, Attribute], Any]] = None,
**kw: Optional[dict]) -> Callable[[Type[T]], Type[T]]: ...

class Attribute:
def __init__(
self,
name: AnyStr,
exclude_from_cmp: bool = False,
exclude_from_init: bool = False,
exclude_from_repr: bool = False,
exclude_from_immutable: bool = False,
default_value: Any = NOTHING,
default_factory: Optional[Callable[[None], Any]] = None,
instance_of: Optional[Any] = None,
init_aliaser: Optional[Callable[[AnyStr], AnyStr]] = strip_leading_underscores) -> None: ...

0 comments on commit 8e9c53f

Please sign in to comment.