132 lines
4.8 KiB
Python
132 lines
4.8 KiB
Python
"""
|
|
Auto-generated Python stub file from main.py
|
|
Module: main
|
|
"""
|
|
|
|
|
|
from stdint import *
|
|
import w32.win32console
|
|
import t, c
|
|
from t import CInt, CPtr, CChar, CInt32T, CUInt64T, CFloat64T, CExport, State
|
|
import viperlib
|
|
import stdlib
|
|
import definetest
|
|
import enumtest
|
|
import mpooltest
|
|
import vectortest
|
|
import fileiotest
|
|
import testcheck
|
|
|
|
def add[T](a: T, b: T) -> T: pass
|
|
|
|
def add_u64[T](a: T, b: T, c: CUInt64T) -> T: pass
|
|
|
|
def fxi[T1, T2](a: T1, b: T2) -> T1: pass
|
|
|
|
def fxi2[T1, T2, T3](a: T1, b: T2, c: T3) -> T1: pass
|
|
|
|
def wrap_add[T](a: T, b: T) -> T: pass
|
|
|
|
def double_add[T](a: T, b: T) -> T: pass
|
|
|
|
|
|
class A[T]:
|
|
def __init__(self: A, a: T) -> t.CInt: pass
|
|
def get_a(self: A) -> T: pass
|
|
class Pair[T1, T2]:
|
|
def __init__(self: Pair, first: T1, second: T2) -> t.CInt: pass
|
|
def get_first(self: Pair) -> T1: pass
|
|
def get_second(self: Pair) -> T2: pass
|
|
class Calculator[T]:
|
|
def __init__(self: Calculator, init_val: T) -> t.CInt: pass
|
|
def compute(self: Calculator, other: T) -> T: pass
|
|
def double_compute(self: Calculator, other: T) -> T: pass
|
|
class Container[T]:
|
|
def __init__(self: Container, v: T) -> t.CInt: pass
|
|
def get_value(self: Container) -> T: pass
|
|
def get_flag(self: Container) -> CInt32T: pass
|
|
@t.CVTable
|
|
class Shape:
|
|
def __init__(self: Shape, x: CFloat64T, y: CFloat64T) -> t.CInt: pass
|
|
def area(self: Shape) -> CFloat64T: pass
|
|
def perimeter(self: Shape) -> CFloat64T: pass
|
|
def describe(self: Shape) -> CFloat64T: pass
|
|
@t.CVTable
|
|
class Circle(Shape):
|
|
def __init__(self: Circle, x: CFloat64T, y: CFloat64T, r: CFloat64T) -> t.CInt: pass
|
|
def area(self: Circle) -> CFloat64T: pass
|
|
def perimeter(self: Circle) -> CFloat64T: pass
|
|
def scale(self: Circle, factor: CFloat64T) -> 'Circle' | CPtr: pass
|
|
def move(self: Circle, dx: CFloat64T, dy: CFloat64T) -> 'Circle' | CPtr: pass
|
|
@t.CVTable
|
|
class Rect(Shape):
|
|
def __init__(self: Rect, x: CFloat64T, y: CFloat64T, w: CFloat64T, h: CFloat64T) -> t.CInt: pass
|
|
def area(self: Rect) -> CFloat64T: pass
|
|
def perimeter(self: Rect) -> CFloat64T: pass
|
|
def scale(self: Rect, factor: CFloat64T) -> 'Rect' | CPtr: pass
|
|
class Vec2:
|
|
x: CFloat64T
|
|
y: CFloat64T
|
|
def __new__() -> 'Vec2' | CPtr: pass
|
|
def __init__(self: Vec2, x: CFloat64T, y: CFloat64T) -> t.CInt: pass
|
|
def __add__(self: Vec2, b: 'Vec2' | CPtr) -> 'Vec2' | CPtr: pass
|
|
def __sub__(self: Vec2, b: 'Vec2' | CPtr) -> 'Vec2' | CPtr: pass
|
|
def __mul__(self: Vec2, s: CFloat64T) -> 'Vec2' | CPtr: pass
|
|
def __neg__(self: Vec2) -> 'Vec2' | CPtr: pass
|
|
def dot(self: Vec2, b: 'Vec2' | CPtr) -> CFloat64T: pass
|
|
def len_sq(self: Vec2) -> CFloat64T: pass
|
|
class Vec3:
|
|
x: CFloat64T
|
|
y: CFloat64T
|
|
z: CFloat64T
|
|
def __new__() -> 'Vec3' | CPtr: pass
|
|
def __init__(self: Vec3, x: CFloat64T, y: CFloat64T, z: CFloat64T) -> t.CInt: pass
|
|
def __add__(self: Vec3, b: 'Vec3' | CPtr) -> 'Vec3' | CPtr: pass
|
|
def __sub__(self: Vec3, b: 'Vec3' | CPtr) -> 'Vec3' | CPtr: pass
|
|
def __mul__(self: Vec3, s: CFloat64T) -> 'Vec3' | CPtr: pass
|
|
def __neg__(self: Vec3) -> 'Vec3' | CPtr: pass
|
|
def dot(self: Vec3, b: 'Vec3' | CPtr) -> CFloat64T: pass
|
|
def cross(self: Vec3, b: 'Vec3' | CPtr) -> 'Vec3' | CPtr: pass
|
|
def len_sq(self: Vec3) -> CFloat64T: pass
|
|
@t.CVTable
|
|
class Dog:
|
|
def __init__(self: Dog, name_val: CInt, bark_power: CInt32T) -> t.CInt: pass
|
|
def speak(self: Dog) -> CInt: pass
|
|
def bite(self: Dog) -> CInt32T: pass
|
|
def take_damage(self: Dog, dmg: CInt32T) -> 'Dog' | CPtr: pass
|
|
def is_alive(self: Dog) -> CInt: pass
|
|
@t.CVTable
|
|
class Cat:
|
|
def __init__(self: Cat, name_val: CInt, lives: CInt32T) -> t.CInt: pass
|
|
def speak(self: Cat) -> CInt: pass
|
|
def scratch(self: Cat) -> CInt32T: pass
|
|
def take_damage(self: Cat, dmg: CInt32T) -> 'Cat' | CPtr: pass
|
|
def is_alive(self: Cat) -> CInt: pass
|
|
class Transform:
|
|
px: CFloat64T
|
|
py: CFloat64T
|
|
pz: CFloat64T
|
|
scale_x: CFloat64T
|
|
scale_y: CFloat64T
|
|
scale_z: CFloat64T
|
|
def __new__() -> 'Transform' | CPtr: pass
|
|
def __init__(self: Transform, px: CFloat64T, py: CFloat64T, pz: CFloat64T) -> t.CInt: pass
|
|
def apply_scale(self: Transform, sx: CFloat64T, sy: CFloat64T, sz: CFloat64T) -> 'Transform' | CPtr: pass
|
|
def world_position(self: Transform) -> 'Vec3' | CPtr: pass
|
|
@t.CVTable
|
|
class Vehicle:
|
|
def __init__(self: Vehicle, speed: CInt32T) -> t.CInt: pass
|
|
def move(self: Vehicle) -> CInt: pass
|
|
def is_running(self: Vehicle) -> CInt: pass
|
|
@t.CVTable
|
|
class Car(Vehicle):
|
|
def __init__(self: Car, speed: CInt32T, doors: CInt32T) -> t.CInt: pass
|
|
def honk(self: Car) -> CInt: pass
|
|
@t.CVTable
|
|
class ElectricCar(Car):
|
|
def __init__(self: ElectricCar, speed: CInt32T, doors: CInt32T, battery: CInt32T) -> t.CInt: pass
|
|
def charge(self: ElectricCar) -> t.CInt: pass
|
|
def move(self: ElectricCar) -> CInt: pass
|
|
|
|
def main() -> CInt | CExport: pass
|