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;

/// Text: `string`'s members, as .NET's. A string doesn't change: what
/// changes one gives a new one.
[Intrinsic]
[Host]
public sealed class String : IComparable<string>, IEquatable<string> {
    /// No text.
    public static readonly string Empty;

    public i32 Length { get; }
    public char this[i32 index] { get; }

    /// What's from `startIndex` on.
    public string Substring(i32 startIndex);
    /// `length` characters from `startIndex`.
    public string Substring(i32 startIndex, i32 length);
    public string ToUpper();
    public string ToLower();
    public string Trim();
    public string TrimStart();
    public string TrimEnd();
    public string PadLeft(i32 totalWidth);
    public string PadRight(i32 totalWidth);
    public string Replace(string oldValue, string newValue);
    public string Insert(i32 startIndex, string value);
    public string Remove(i32 startIndex, i32 count);
    public bool StartsWith(string value);
    public bool EndsWith(string value);
    public bool Contains(string value);
    /// Where `value` first is; -1 when it isn't.
    public i32 IndexOf(string value);
    public i32 IndexOf(char value);
    public i32 LastIndexOf(string value);
    public i32 LastIndexOf(char value);
    /// The parts between each `separator`.
    public string[] Split(char separator);
    public string[] Split(string separator);
    public bool Equals(string value);
    public i32 CompareTo(string value);

    public static bool IsNullOrEmpty(string? value);
    public static bool IsNullOrWhiteSpace(string? value);
    public static string Join(string separator, in IEnumerable<string> values);
    public static string Concat(string a, string b);
    /// .NET's composite format: `Format("{0,5:F2} of {1}", a, b)` — each
    /// hole an argument by its index, padded by its alignment, written by
    /// its format; `{{ }}` are braces.
    public static string Format(string format, params object?[] args);
    public static i32 Compare(string a, string b);
}