Files
adblock
addr
addr2line
adler
aho_corasick
backtrace
base64
bitflags
byteorder
cfg_if
crc32fast
ctor
either
error_chain
flate2
deflate
ffi
gz
zlib
foreign_types
foreign_types_shared
ghost
gimli
read
idna
indoc
indoc_impl
instant
inventory
inventory_impl
itertools
adaptors
combinations.rscombinations_with_replacement.rsconcat_impl.rscons_tuples_impl.rsdiff.rseither_or_both.rsexactly_one_err.rsformat.rsfree.rsgroup_map.rsgroupbylazy.rsimpl_macros.rsintersperse.rskmerge_impl.rslazy_buffer.rslib.rsmerge_join.rsminmax.rsmultipeek_impl.rspad_tail.rspeeking_take_while.rspermutations.rsprocess_results_impl.rsput_back_n_impl.rsrciter_impl.rsrepeatn.rssize_hint.rssources.rstee.rstuple_impl.rsunique_impl.rswith_position.rszip_eq_impl.rszip_longest.rsziptuple.rs
lazy_static
libc
unix
lock_api
log
matches
memchr
miniz_oxide
native_tls
num_traits
object
read
once_cell
openssl
openssl_probe
openssl_sys
parking_lot
parking_lot_core
paste
paste_impl
percent_encoding
proc_macro2
proc_macro_hack
psl
psl_codegen
psl_lexer
pyo3
class
ffi
bltinmodule.rsboolobject.rsbytearrayobject.rsbytesobject.rsceval.rscode.rscodecs.rscompile.rscomplexobject.rsdatetime.rsdescrobject.rsdictobject.rsenumobject.rseval.rsfileobject.rsfloatobject.rsframeobject.rsgenobject.rsimport.rsintrcheck.rsiterobject.rslistobject.rslongobject.rsmarshal.rsmemoryobject.rsmethodobject.rsmod.rsmodsupport.rsmoduleobject.rsobject.rsobjectabstract.rsobjimpl.rsosmodule.rspyarena.rspycapsule.rspydebug.rspyerrors.rspyhash.rspymem.rspyport.rspystate.rspystrtod.rspythonrun.rsrangeobject.rssetobject.rssliceobject.rsstructmember.rsstructseq.rssysmodule.rstraceback.rstupleobject.rstypeslots.rsunicodeobject.rswarnings.rsweakrefobject.rs
types
pyo3_derive_backend
pyo3cls
quote
regex
regex_syntax
ast
hir
unicode_tables
rental
rental_impl
rmp
decode
encode
rmp_serde
rustc_demangle
scopeguard
seahash
sequence_trie
serde
de
private
ser
serde_derive
smallvec
stable_deref_trait
syn
thread_local
tinyvec
twoway
unchecked_index
unicode_bidi
unicode_normalization
unicode_xid
unindent
url
>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
// Copyright (c) 2017-present PyO3 Project and Contributors //! Context manager api //! Trait and support implementation for context manager api //! use crate::callback::IntoPyCallbackOutput; use crate::{PyClass, PyObject}; /// Context manager interface #[allow(unused_variables)] pub trait PyContextProtocol<'p>: PyClass { fn __enter__(&'p mut self) -> Self::Result where Self: PyContextEnterProtocol<'p>, { unimplemented!() } fn __exit__( &'p mut self, exc_type: Option<Self::ExcType>, exc_value: Option<Self::ExcValue>, traceback: Option<Self::Traceback>, ) -> Self::Result where Self: PyContextExitProtocol<'p>, { unimplemented!() } } pub trait PyContextEnterProtocol<'p>: PyContextProtocol<'p> { type Result: IntoPyCallbackOutput<PyObject>; } pub trait PyContextExitProtocol<'p>: PyContextProtocol<'p> { type ExcType: crate::FromPyObject<'p>; type ExcValue: crate::FromPyObject<'p>; type Traceback: crate::FromPyObject<'p>; type Result: IntoPyCallbackOutput<PyObject>; }