We can firstly introduce a subset of Python.
Should look in this way:
@jit
class S(Generic[T]):
a : np.int64 # julia type Int64
b : int # python integer
c : Vec[T] # julia type Vector{T}
# Vec could be given as an attached module of restrain-jit
d : Vec[S[T]] # allow recursive definitions