Expose exception types under vm::builtins

This commit is contained in:
Jeong YunWon committed 2021-09-30 01:12:45 +09:00
1 parent 3a84b28c87
commit c3f46c773e
29 files changed
+617 -599

No files matched your search

+1 -1
View File
@@ -346,7 +346,7 @@ pub(crate) fn impl_define_exception(
#[pymethod(magic)]
pub(crate) fn init(
zelf: ::rustpython_vm::PyRef<::rustpython_vm::exceptions::PyBaseException>,
zelf: ::rustpython_vm::PyRef<::rustpython_vm::builtins::PyBaseException>,
args: ::rustpython_vm::function::FuncArgs,
vm: &::rustpython_vm::VirtualMachine,
) -> ::rustpython_vm::PyResult<()> {
+2 -1
View File
@@ -3,8 +3,9 @@ mod helper;
use rustpython_parser::error::{LexicalErrorType, ParseErrorType};
use rustpython_vm::readline::{Readline, ReadlineResult};
use rustpython_vm::{
builtins::PyBaseExceptionRef,
compile::{self, CompileError, CompileErrorType},
exceptions::{print_exception, PyBaseExceptionRef},
exceptions::print_exception,
scope::Scope,
PyResult, TypeProtocol, VirtualMachine,
};
+1 -1
View File
@@ -1,7 +1,7 @@
use super::{PyCode, PyStrRef, PyTypeRef};
use crate::{
builtins::PyBaseExceptionRef,
coroutine::{Coro, Variant},
exceptions::PyBaseExceptionRef,
frame::FrameRef,
function::OptionalArg,
slots::{IteratorIterable, PyIter},
+1 -1
View File
@@ -1,8 +1,8 @@
use super::{IterStatus, PySet, PyStrRef, PyTypeRef};
use crate::{
builtins::PyBaseExceptionRef,
common::ascii,
dictdatatype::{self, DictKey},
exceptions::PyBaseExceptionRef,
function::{ArgIterable, FuncArgs, KwArgs, OptionalArg},
iterator,
slots::{Comparable, Hashable, Iterable, IteratorIterable, PyComparisonOp, PyIter, Unhashable},
+1 -1
View File
@@ -1,8 +1,8 @@
use crate::builtins::dict::PyDictRef;
use crate::builtins::function::{PyFunction, PyFunctionRef};
use crate::builtins::PyBaseExceptionRef;
use crate::builtins::{float, int, pybool, PyStrRef};
use crate::bytecode::CodeFlags;
use crate::exceptions::PyBaseExceptionRef;
use crate::function::FuncArgs;
use crate::VirtualMachine;
use crate::{
+2
View File
@@ -86,3 +86,5 @@ pub use int::try_to_float as try_bigint_to_f64;
mod make_module;
pub use make_module::{ascii, make_module, print};
pub use crate::exceptions::types::*;
+2 -3
View File
@@ -1,13 +1,12 @@
use super::PyTypeRef;
use crate::{
slots::SlotConstructor, IntoPyObject, PyClassImpl, PyContext, PyObjectRef, PyRef, PyResult,
PyValue, TypeProtocol, VirtualMachine,
slots::SlotConstructor, IntoPyObject, PyClassImpl, PyContext, PyObjectRef, PyResult, PyValue,
TypeProtocol, VirtualMachine,
};
#[pyclass(module = false, name = "NoneType")]
#[derive(Debug)]
pub struct PyNone;
pub type PyNoneRef = PyRef<PyNone>;
impl PyValue for PyNone {
fn class(vm: &VirtualMachine) -> &PyTypeRef {
+1 -1
View File
@@ -2,9 +2,9 @@ use std::borrow::Cow;
use std::collections::HashMap;
use std::ops::Range;
use crate::builtins::PyBaseExceptionRef;
use crate::builtins::{PyBytesRef, PyStr, PyStrRef, PyTuple, PyTupleRef};
use crate::common::{ascii, lock::PyRwLock};
use crate::exceptions::PyBaseExceptionRef;
use crate::VirtualMachine;
use crate::{IntoPyObject, PyContext, PyObjectRef, PyResult, PyValue, TryFromObject, TypeProtocol};
+2 -1
View File
@@ -1,5 +1,6 @@
use crate::builtins::PyBaseExceptionRef;
use crate::builtins::{PyStrRef, PyTypeRef};
use crate::exceptions::{self, PyBaseExceptionRef};
use crate::exceptions;
use crate::frame::{ExecutionResult, FrameRef};
use crate::VirtualMachine;
use crate::{PyObjectRef, PyResult, TypeProtocol};
+561 -545
View File
File diff suppressed because it is too large. Load diff
+2 -2
View File
@@ -1,6 +1,6 @@
use crate::builtins::{self, PyStrRef};
use crate::builtins::{self, PyBaseExceptionRef, PyStrRef};
use crate::common::float_ops;
use crate::exceptions::{IntoPyException, PyBaseExceptionRef};
use crate::exceptions::IntoPyException;
use crate::function::FuncArgs;
use crate::vm::VirtualMachine;
use crate::{ItemProtocol, PyObjectRef, PyResult, TypeProtocol};
+2 -1
View File
@@ -1,5 +1,6 @@
use crate::common::{boxvec::BoxVec, lock::PyMutex};
use crate::{
builtins::PyBaseExceptionRef,
builtins::{
self,
asyncgenerator::PyAsyncGenWrappedValue,
@@ -13,7 +14,7 @@ use crate::{
},
bytecode,
coroutine::Coro,
exceptions::{self, ExceptionCtor, PyBaseExceptionRef},
exceptions::{self, ExceptionCtor},
function::FuncArgs,
iterator,
scope::Scope,
+1 -1
View File
@@ -4,7 +4,7 @@ mod byteslike;
use self::OptionalArg::*;
use crate::builtins::pytype::PyTypeRef;
use crate::builtins::tuple::PyTupleRef;
use crate::exceptions::PyBaseExceptionRef;
use crate::builtins::PyBaseExceptionRef;
use crate::vm::VirtualMachine;
use crate::{
IntoPyObject, IntoPyResult, PyObjectRef, PyRef, PyResult, PyThreadingConstraint, PyValue,
+1 -1
View File
@@ -5,10 +5,10 @@ use rand::Rng;
use crate::builtins::code::CodeObject;
use crate::builtins::traceback::{PyTraceback, PyTracebackRef};
use crate::builtins::PyBaseExceptionRef;
use crate::builtins::{code, list};
#[cfg(feature = "rustpython-compiler")]
use crate::compile;
use crate::exceptions::PyBaseExceptionRef;
use crate::scope::Scope;
use crate::version::get_git_revision;
use crate::vm::{InitParameter, VirtualMachine};
+1 -1
View File
@@ -4,7 +4,7 @@
use crate::builtins::int::{self, PyInt};
use crate::builtins::iter::PySequenceIterator;
use crate::exceptions::PyBaseExceptionRef;
use crate::builtins::PyBaseExceptionRef;
use crate::vm::VirtualMachine;
use crate::{IdProtocol, PyObjectRef, PyResult, PyValue, TypeProtocol};
use num_traits::Signed;
+1 -1
View File
@@ -1,7 +1,7 @@
use crate::builtins::bytes::PyBytes;
use crate::builtins::pystr::PyStr;
use crate::builtins::PyBaseExceptionRef;
use crate::common::ascii;
use crate::exceptions::PyBaseExceptionRef;
use crate::VirtualMachine;
use crate::{PyObjectRef, PyResult};
use std::{fmt, io, ops};
+2 -1
View File
@@ -5,6 +5,7 @@ use crate::common::{
};
pub use crate::pyobjectrc::{PyObject, PyObjectRef, PyObjectWeak, PyRef, PyWeakRef};
use crate::{
builtins::PyBaseExceptionRef,
builtins::{
builtinfunc::PyNativeFuncDef,
bytearray, bytes,
@@ -17,7 +18,7 @@ use crate::{
PyNone, PyNotImplemented, PyStaticMethod, PyTuple, PyTupleRef, PyType, PyTypeRef,
},
dictdatatype::Dict,
exceptions::{self, PyBaseExceptionRef},
exceptions,
function::{IntoFuncArgs, IntoPyNativeFunc},
slots::{PyTpFlags, PyTypeSlots},
types::{create_type_with_slots, TypeZoo},
+1 -2
View File
@@ -4,9 +4,8 @@ pub(crate) use _codecs::make_module;
mod _codecs {
use crate::common::encodings;
use crate::{
builtins::{PyBytes, PyBytesRef, PyStr, PyStrRef, PyTuple},
builtins::{PyBaseExceptionRef, PyBytes, PyBytesRef, PyStr, PyStrRef, PyTuple},
codecs,
exceptions::PyBaseExceptionRef,
function::{ArgBytesLike, FuncArgs},
IdProtocol, PyObjectRef, PyResult, TryFromBorrowedObject, VirtualMachine,
};
+6 -4
View File
@@ -78,11 +78,13 @@ mod _io {
};
use crate::{
builtins::{
PyByteArray, PyBytes, PyBytesRef, PyMemoryView, PyStr, PyStrRef, PyType, PyTypeRef,
PyBaseExceptionRef, PyByteArray, PyBytes, PyBytesRef, PyMemoryView, PyStr, PyStrRef,
PyType, PyTypeRef,
},
exceptions,
function::{
ArgBytesLike, ArgIterable, ArgMemoryBuffer, FuncArgs, OptionalArg, OptionalOption,
},
exceptions::{self, PyBaseExceptionRef},
function::{ArgBytesLike, ArgMemoryBuffer},
function::{ArgIterable, FuncArgs, OptionalArg, OptionalOption},
protocol::{BufferInternal, BufferOptions, PyBuffer, ResizeGuard},
slots::{Iterable, PyIter, SlotConstructor},
utils::Either,
+1 -1
View File
@@ -5,8 +5,8 @@ mod machinery;
mod _json {
use super::machinery;
use crate::{
builtins::PyBaseExceptionRef,
builtins::{PyStrRef, PyTypeRef},
exceptions::PyBaseExceptionRef,
function::{FuncArgs, OptionalArg},
iterator,
slots::{Callable, SlotConstructor},
+2 -1
View File
@@ -1,8 +1,9 @@
use super::errno::errors;
use crate::crt_fd::Fd;
use crate::{
builtins::PyBaseExceptionRef,
builtins::{PyBytes, PyBytesRef, PyInt, PySet, PyStr, PyStrRef},
exceptions::{IntoPyException, PyBaseExceptionRef},
exceptions::IntoPyException,
function::{ArgumentError, FromArgs, FuncArgs},
protocol::PyBuffer,
IntoPyObject, PyObjectRef, PyResult, PyValue, TryFromBorrowedObject, TryFromObject,
+2 -3
View File
@@ -13,11 +13,10 @@
pub(crate) mod _struct {
use crate::{
builtins::{
bytes::PyBytesRef, float, pybool::IntoPyBool, pystr::PyStr, pystr::PyStrRef,
pytype::PyTypeRef, tuple::PyTupleRef,
float, IntoPyBool, PyBaseExceptionRef, PyBytesRef, PyStr, PyStrRef, PyTupleRef,
PyTypeRef,
},
common::str::wchar_t,
exceptions::PyBaseExceptionRef,
function::{ArgBytesLike, ArgMemoryBuffer, PosArgs},
slots::{IteratorIterable, PyIter, SlotConstructor},
utils::Either,
+2 -2
View File
@@ -1,7 +1,7 @@
use crate::common::lock::{PyMappedRwLockReadGuard, PyRwLock, PyRwLockReadGuard};
use crate::{
builtins::{PyStrRef, PyTupleRef, PyTypeRef},
exceptions::{IntoPyException, PyBaseExceptionRef},
builtins::{PyBaseExceptionRef, PyStrRef, PyTupleRef, PyTypeRef},
exceptions::IntoPyException,
function::{ArgBytesLike, ArgMemoryBuffer, FuncArgs, OptionalArg, OptionalOption},
utils::{Either, ToCString},
IntoPyObject, PyClassImpl, PyObjectRef, PyResult, PyValue, TryFromBorrowedObject,
+3 -4
View File
@@ -4,10 +4,9 @@ use crate::common::{
lock::{PyRwLock, PyRwLockWriteGuard},
};
use crate::{
builtins::{PyStrRef, PyType, PyTypeRef, PyWeak},
exceptions::{self, IntoPyException, PyBaseException, PyBaseExceptionRef},
function::{ArgBytesLike, ArgMemoryBuffer, ArgStrOrBytesLike},
function::{ArgCallable, OptionalArg},
builtins::{PyBaseException, PyBaseExceptionRef, PyStrRef, PyType, PyTypeRef, PyWeak},
exceptions::{self, IntoPyException},
function::{ArgBytesLike, ArgCallable, ArgMemoryBuffer, ArgStrOrBytesLike, OptionalArg},
slots::SlotConstructor,
stdlib::os::PyPathLike,
types::create_simple_type,
+1 -1
View File
@@ -3,8 +3,8 @@ pub(crate) use self::termios::make_module;
#[pymodule]
mod termios {
use crate::{
builtins::PyBaseExceptionRef,
builtins::{PyBytes, PyInt, PyListRef, PyTypeRef},
exceptions::PyBaseExceptionRef,
IntoPyObject, PyObjectRef, PyResult, TryFromObject, VirtualMachine,
};
use std::convert::TryFrom;
+1 -2
View File
@@ -4,8 +4,7 @@ pub(crate) use decl::make_module;
mod decl {
use crate::common::lock::PyMutex;
use crate::{
builtins::{PyBytes, PyBytesRef, PyIntRef, PyTypeRef},
exceptions::PyBaseExceptionRef,
builtins::{PyBaseExceptionRef, PyBytes, PyBytesRef, PyIntRef, PyTypeRef},
function::{ArgBytesLike, OptionalArg},
types::create_simple_type,
IntoPyRef, PyResult, PyValue, VirtualMachine,
+2 -1
View File
@@ -14,10 +14,11 @@ use crate::{
tuple::{PyTuple, PyTupleRef, PyTupleTyped},
PyDictRef, PyInt, PyIntRef, PyList, PyModule, PyStr, PyStrRef, PyTypeRef,
},
builtins::{PyBaseException, PyBaseExceptionRef},
bytecode,
codecs::CodecsRegistry,
common::{ascii, hash::HashSecret, lock::PyMutex, rc::PyRc},
exceptions::{self, PyBaseException, PyBaseExceptionRef},
exceptions,
frame::{ExecutionResult, Frame, FrameRef},
frozen,
function::{FuncArgs, IntoFuncArgs},
+11 -14
View File
@@ -1,19 +1,16 @@
use js_sys::{Array, ArrayBuffer, Object, Promise, Reflect, SyntaxError, Uint8Array};
use wasm_bindgen::{closure::Closure, prelude::*, JsCast};
use rustpython_parser::error::ParseErrorType;
use rustpython_vm::compile::{CompileError, CompileErrorType};
use rustpython_vm::exceptions::PyBaseExceptionRef;
use rustpython_vm::function::ArgBytesLike;
use rustpython_vm::function::FuncArgs;
use rustpython_vm::VirtualMachine;
use rustpython_vm::{exceptions, py_serde};
use rustpython_vm::{
ItemProtocol, PyObjectRef, PyResult, PyValue, TryFromBorrowedObject, TypeProtocol,
};
use crate::js_module;
use crate::vm_class::{stored_vm_from_wasm, WASMVirtualMachine};
use js_sys::{Array, ArrayBuffer, Object, Promise, Reflect, SyntaxError, Uint8Array};
use rustpython_parser::error::ParseErrorType;
use rustpython_vm::{
builtins::PyBaseExceptionRef,
compile::{CompileError, CompileErrorType},
exceptions,
function::{ArgBytesLike, FuncArgs},
py_serde, ItemProtocol, PyObjectRef, PyResult, PyValue, TryFromBorrowedObject, TypeProtocol,
VirtualMachine,
};
use wasm_bindgen::{closure::Closure, prelude::*, JsCast};
#[wasm_bindgen(inline_js = r"
export class PyError extends Error {
+1 -1
View File
@@ -6,8 +6,8 @@ use std::{cell, fmt, future};
use wasm_bindgen::{closure::Closure, prelude::*, JsCast};
use wasm_bindgen_futures::{future_to_promise, JsFuture};
use rustpython_vm::builtins::PyBaseExceptionRef;
use rustpython_vm::builtins::{PyFloatRef, PyStrRef, PyTypeRef};
use rustpython_vm::exceptions::PyBaseExceptionRef;
use rustpython_vm::function::{OptionalArg, OptionalOption, PosArgs};
use rustpython_vm::slots::{IteratorIterable, PyIter};
use rustpython_vm::types::create_simple_type;