private static void SetBoolParameter(EnvParams prms, EnvParamKind prm, object value) { if (!(value is bool)) { throw new BadEnvParamException( string.Format( "Bad environment parameter; {0} must have type bool", prm)); } prms.settings[prm] = value; }
public static bool GetBoolParameter(EnvParams prms, EnvParamKind prm) { Contract.Requires(GetParameterType(prm).Equals(typeof(bool))); object val; if (prms != null && prms.settings.TryGetValue(prm, out val)) { return((bool)val); } return((bool)parameters[prm].Item3); }
private static void SetReferencePrintKindParameter(EnvParams prms, EnvParamKind prm, object value) { if (!(value is ReferencePrintKind)) { throw new BadEnvParamException( string.Format( "Bad environment parameter; {0} must have type {1}", prm, typeof(ReferencePrintKind).Name)); } prms.settings[prm] = value; }
/// <summary> /// Returns a new set of parameters with same parameters as prms, but with kind = value. /// If prms is null, then all parameters start with their default values. /// </summary> public static EnvParams SetParameter(EnvParams prms, EnvParamKind kind, object value) { var clone = new EnvParams(); if (prms != null) { foreach (var kv in prms.settings) { clone.settings[kv.Key] = kv.Value; } } EnvParams.parameters[kind].Item4(clone, kind, value); return(clone); }
public static ReferencePrintKind GetReferencePrintKindParameter(EnvParams prms, EnvParamKind prm) { Contract.Requires(GetParameterType(prm).Equals(typeof(ReferencePrintKind))); object val; if (prms != null && prms.settings.TryGetValue(prm, out val)) { return((ReferencePrintKind)val); } return((ReferencePrintKind)parameters[prm].Item3); }
public static string GetParameterDescr(EnvParamKind prm) { return(parameters[prm].Item2); }
public static Type GetParameterType(EnvParamKind prm) { return(parameters[prm].Item1); }