yog-script-analyze 0.4.0

Yog Script (.ys, .yns) analyzed: its lexer, parser and syntax tree, names resolved, the class index model — what the build and the editors read a source with.
Documentation
namespace System;

// A tuple's type, as .NET's `ValueTuple`: `(i32, string)` is a
// `ValueTuple<i32, string>`, its items `Item1`, `Item2`…, compared and
// copied by value.

/// A tuple of 1.
public struct ValueTuple<T1>(T1 item1) {
    public T1 Item1 = item1;

    public override string ToString() => "(" + Item1 + ")";
}

/// A tuple of 2.
public struct ValueTuple<T1, T2>(T1 item1, T2 item2) {
    public T1 Item1 = item1;
    public T2 Item2 = item2;

    public override string ToString() => "(" + Item1 + ", " + Item2 + ")";
}

/// A tuple of 3.
public struct ValueTuple<T1, T2, T3>(T1 item1, T2 item2, T3 item3) {
    public T1 Item1 = item1;
    public T2 Item2 = item2;
    public T3 Item3 = item3;

    public override string ToString() => "(" + Item1 + ", " + Item2 + ", " + Item3 + ")";
}

/// A tuple of 4.
public struct ValueTuple<T1, T2, T3, T4>(T1 item1, T2 item2, T3 item3, T4 item4) {
    public T1 Item1 = item1;
    public T2 Item2 = item2;
    public T3 Item3 = item3;
    public T4 Item4 = item4;

    public override string ToString() => "(" + Item1 + ", " + Item2 + ", " + Item3 + ", " + Item4 + ")";
}

/// A tuple of 5.
public struct ValueTuple<T1, T2, T3, T4, T5>(T1 item1, T2 item2, T3 item3, T4 item4, T5 item5) {
    public T1 Item1 = item1;
    public T2 Item2 = item2;
    public T3 Item3 = item3;
    public T4 Item4 = item4;
    public T5 Item5 = item5;

    public override string ToString() => "(" + Item1 + ", " + Item2 + ", " + Item3 + ", " + Item4 + ", " + Item5 + ")";
}

/// A tuple of 6.
public struct ValueTuple<T1, T2, T3, T4, T5, T6>(T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6) {
    public T1 Item1 = item1;
    public T2 Item2 = item2;
    public T3 Item3 = item3;
    public T4 Item4 = item4;
    public T5 Item5 = item5;
    public T6 Item6 = item6;

    public override string ToString() => "(" + Item1 + ", " + Item2 + ", " + Item3 + ", " + Item4 + ", " + Item5 + ", " + Item6 + ")";
}

/// A tuple of 7.
public struct ValueTuple<T1, T2, T3, T4, T5, T6, T7>(T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7) {
    public T1 Item1 = item1;
    public T2 Item2 = item2;
    public T3 Item3 = item3;
    public T4 Item4 = item4;
    public T5 Item5 = item5;
    public T6 Item6 = item6;
    public T7 Item7 = item7;

    public override string ToString() => "(" + Item1 + ", " + Item2 + ", " + Item3 + ", " + Item4 + ", " + Item5 + ", " + Item6 + ", " + Item7 + ")";
}