Skip to content
Version 2.11.0
↓ Get the launcher

StellarInterop class

Static IL2CPP-interop reflection floor shared by every plugin. Pure BCL reflection over the live AppDomain — no Unity / game / HarmonyX references — so it lives in the contract layer alongside VirtualListMath and can be called from static Harmony patch classes that hold no IPluginServices handle.

IL2CPP notes: il2cpp fields surface as PropertyInfo (never FieldInfo); il2cpp lists (ZList<T>) are not IEnumerable, so walk them with Count + Item; ZSingleton<T>.Instance is an inherited static member reachable via the base-chain walk in GetSingleton.

public static class StellarInterop
name description
static Count(…) Reads the Count property off an il2cpp list/collection. Returns 0 when the object is null or exposes no readable Count.
static Enumerate(…) Lazily enumerates an il2cpp list as boxed elements via Count + Item. Elements that fail to read yield null. Safe to foreach over a non-IEnumerable ZList.
static FindFieldUp(…) Finds a field named name by walking the base chain. Rarely needed on il2cpp (fields are properties there) but present for the occasional managed backing field. Returns null if absent.
static FindMethod(…) Finds the first non-generic method named name with exactly paramCount parameters, walking the base chain. Use when an exact-signature GetMethod fails because an il2cpp proxy uses Il2CppSystem parameter types.
static FindPropertyUp(…) Finds a property named name by walking the base chain (il2cpp fields surface as properties, and inherited members are not returned without a base-chain walk). Returns null if absent.
static FindType(…) Resolves a type by full name across every loaded assembly. Successful results are cached; misses are not (game types load lazily, so a later call can still succeed). Returns null if absent.
static GetSingleton(…) Reads the static singleton accessor (Instance property or field) off t, walking the base chain so an inherited ZSingleton<T>.Instance resolves. Returns null if absent or if the getter throws. (2 methods)
static Item(…) Reads element index off an il2cpp list via its indexer (Item property or get_Item(int) method). Returns null on any failure.