language · keyword ·
protected
Expose through inheritance
Use fields for direct data. Use a property when read or write policy is part of the object's contract and you accept its experimental status.
protectedStatus: experimental
Complete program
Model a player profile with explicit member access and property shapes. This class example uses the CPU oracle.
cpu · language · type checked
class Profile
{
public text displayName = "Nova"
private int secret = 7
protected int rank = 1
internal int region = 2
readonly text id = "player-1"
int level { get; set; }
text createdBy { get; init; }
}
Profile player = Profile()
player.level = 3
Console.Log(player.displayName)
Console.Log(Text.From(player.level))
project.mech
manifestVersion = "2"
package = "api.example.word__protected"
version = "0.1.0"
languageEdition = "yeho-core-2026.1"
[app]
kind = "headless"
Notes and source
Properties require get and cannot combine set with init.
Computed property bodies are unavailable; current properties describe access shape.
yeho/parser_declarations.cpp parseThingMemberModifiers and parseThingPropertyAccessors; conformance properties