Class StateManagerBuilder
- Namespace
- RandomizerCore.Logic.StateLogic
- Assembly
- RandomizerCore.dll
Object used to create StateManager.
public class StateManagerBuilder
- Inheritance
-
StateManagerBuilder
- Inherited Members
Constructors
StateManagerBuilder()
public StateManagerBuilder()
StateManagerBuilder(StateManager)
public StateManagerBuilder(StateManager sm)
Parameters
sm
StateManager
StateManagerBuilder(StateManagerBuilder)
public StateManagerBuilder(StateManagerBuilder smb)
Parameters
Properties
Bools
public ReadOnlyCollection<StateBool> Bools { get; }
Property Value
FieldLookup
public ReadOnlyDictionary<string, StateField> FieldLookup { get; }
Property Value
Ints
public ReadOnlyCollection<StateInt> Ints { get; }
Property Value
Methods
AppendRawStateData(RawStateData?)
public void AppendRawStateData(RawStateData? rsd)
Parameters
rsd
RawStateData
EnumerateNamedStateUnions()
public IEnumerable<(string, List<PreState>)> EnumerateNamedStateUnions()
Returns
- IEnumerable<(string, List<PreState>)>
EnumerateNamedStates()
public IEnumerable<(string, PreState)> EnumerateNamedStates()
Returns
EnumeratePropertyLists()
public IEnumerable<(string, IEnumerable<(string, object?)>)> EnumeratePropertyLists()
Returns
- IEnumerable<(string, IEnumerable<(string, object)>)>
GetOrAddBool(string)
public StateBool GetOrAddBool(string name)
Parameters
name
string
Returns
GetOrAddField(string, StateFieldType)
public StateField GetOrAddField(string name, StateFieldType type)
Parameters
name
stringtype
StateFieldType
Returns
GetOrAddInt(string)
public StateInt GetOrAddInt(string name)
Parameters
name
string
Returns
GetOrAddNamedState(string)
public PreState GetOrAddNamedState(string name)
Parameters
name
string
Returns
GetOrAddNamedStateUnion(string)
public List<PreState> GetOrAddNamedStateUnion(string name)
Parameters
name
string
Returns
RemoveProperty(string, string)
public void RemoveProperty(string fieldName, string propertyName)
Parameters
SetProperty(string, string, string)
Sets the field's property to the specified value.
public void SetProperty(string fieldName, string propertyName, string propertyValue)
Parameters
SetProperty<T>(string, string, T)
Sets the field's property to the specified value.
Data on the StateManager is expected to be immutable. The generic constraints are to encourage only using primitive types and enums as property values through this overload.
public void SetProperty<T>(string fieldName, string propertyName, T propertyValue) where T : struct, IConvertible
Parameters
Type Parameters
T
TryGetProperty(string, string, out object?)
public bool TryGetProperty(string fieldName, string propertyName, out object? propertyValue)