diff --git a/compiler/erg_compiler/lib/pystd/heapq.d.er b/compiler/erg_compiler/lib/pystd/heapq.d.er new file mode 100644 index 00000000..99aa0197 --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/heapq.d.er @@ -0,0 +1,4 @@ +.heappush!: |T: Type|(heap: Iterable(T), item: T) => NoneType # TODO: Push! +.heappop!: |T: Type|(heap: Iterable(T)) => T # TODO: Pop! +.heappushpop!: |T: Type|(heap: Iterable(T), item: T) => T # TODO: Push! and Pop! +.heapify!: (heap: Array(Obj, _)) => NoneType diff --git a/compiler/erg_compiler/lib/pystd/http.d/server.d.er b/compiler/erg_compiler/lib/pystd/http.d/server.d.er new file mode 100644 index 00000000..84da10e2 --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/http.d/server.d.er @@ -0,0 +1,5 @@ +.HTTPServer: ClassType +.ThreadingServer: ClassType +.BaseHTTPReqeustHandler: ClassType +.SimpleHTTPRequestHandler: ClassType +.CGIHTTPRequestHandler: ClassType diff --git a/compiler/erg_compiler/lib/pystd/inspect.d.er b/compiler/erg_compiler/lib/pystd/inspect.d.er new file mode 100644 index 00000000..00ea9ed7 --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/inspect.d.er @@ -0,0 +1,2 @@ +.FrameInfo: ClassType +.Traceback: ClassType diff --git a/compiler/erg_compiler/lib/pystd/pydoc.d.er b/compiler/erg_compiler/lib/pystd/pydoc.d.er new file mode 100644 index 00000000..e69de29b diff --git a/compiler/erg_compiler/lib/pystd/socketserver.d.er b/compiler/erg_compiler/lib/pystd/socketserver.d.er new file mode 100644 index 00000000..505f9902 --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/socketserver.d.er @@ -0,0 +1,17 @@ +.TCPServer: ClassType +.UDPServer: ClassType +.UnixStreamServer: ClassType +.UnixDatagramServer: ClassType + +.ForkingMixIn: ClassType +.ThreadingMixIn: ClassType + +.ForkingTCPServer: ClassType +.ForkingUDPServer: ClassType +.ThreadingTCPServer: ClassType +.ThreadingUDPServer: ClassType + +.BaseServer: ClassType +.BaseRequestHandler: ClassType +.StreamRequestHandler: ClassType +.DatagramRequestHandler: ClassType diff --git a/compiler/erg_compiler/lib/pystd/threading.d.er b/compiler/erg_compiler/lib/pystd/threading.d.er new file mode 100644 index 00000000..cab7122a --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/threading.d.er @@ -0,0 +1,23 @@ +.Thread!: ClassType +.Thread!.name: Str +.Thread!.daemon: Bool +.Thread!.ident: Nat or NoneType # TODO: Pos or NoneType +.Thread!.native_id: Nat or NoneType +.Thread!.start!: (self: .Thread!) => NoneType +.Thread!.run!: (self: .Thread!) => NoneType +.Thread!.join!: (self: .Thread!, timeout := Nat or NoneType) => NoneType +.Thread!.is_alive: (self: .Thread!) -> Bool + +.Local! = 'local': ClassType + +.Lock!: ClassType +.RLock!: ClassType +.Condition!: ClassType +.Semaphore!: ClassType +.BoundedSemaphore!: ClassType +.Event!: ClassType +.Timer!: ClassType +.Barrier!: ClassType +.BrokenBarrierError: ClassType + +.active_count!: () => Nat diff --git a/compiler/erg_compiler/lib/pystd/traceback.d.er b/compiler/erg_compiler/lib/pystd/traceback.d.er new file mode 100644 index 00000000..3af40667 --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/traceback.d.er @@ -0,0 +1,5 @@ +inspect = pyimport "inspect" + +.print_tb!: (tb: inspect.Traceback, limit := Nat or NoneType, file := File! or NoneType) => NoneType + +.TracebackExeption: ClassType diff --git a/compiler/erg_compiler/lib/pystd/types.d.er b/compiler/erg_compiler/lib/pystd/types.d.er new file mode 100644 index 00000000..57330b3b --- /dev/null +++ b/compiler/erg_compiler/lib/pystd/types.d.er @@ -0,0 +1,24 @@ +.NoneType: ClassType +.FunctionType: ClassType +.LambdaType: ClassType +.GeneratorType: ClassType +.CoroutineType: ClassType +.AsyncGeneratorType: ClassType +.CodeType: ClassType +.CellType: ClassType +.MethodType: ClassType +.BuiltinFunctionType: ClassType +.BuiltinMethodType: ClassType +.WrapperDescriptorType: ClassType +.MethodWrapperType: ClassType +.NotImplementedType: ClassType +.MethodDescriptorType: ClassType +.ClassMethodDescriptorType: ClassType +.ModuleType: ClassType +.EllipsisType: ClassType +.GenericAlias: (Type, GenericTuple) -> ClassType # TODO: Tuple Type +.UnionType: (Type, Type) -> Type + +.TracebackType: ClassType +.FrameType: ClassType +.MappingProxyType: ClassType