public ParametrizedCode(string[]?stringParts, CodeParameterInfo[]?parameters, OperatorPrecedence operatorPrecedence, string?evaluatedDefault = null) { if (stringParts == null) { this.evaluatedDefault = evaluatedDefault ?? throw new ArgumentNullException(nameof(stringParts), "Can't be null, unless evaluatedDefauls is set."); } else if (stringParts.Length == 1) { this.evaluatedDefault = stringParts[0] ?? throw new ArgumentNullException(nameof(stringParts), "Can't be null, unless evaluatedDefauls is set."); } else { this.stringParts = stringParts; this.parameters = parameters ?? throw new ArgumentNullException(nameof(parameters), "Can't be null, unless stringParts.Length == 1"); this.evaluatedDefault = evaluatedDefault; } this.OperatorPrecedence = operatorPrecedence; }
public ParametrizedCode(string code, OperatorPrecedence precedence = default) { this.evaluatedDefault = code ?? throw new ArgumentNullException(nameof(code)); this.OperatorPrecedence = precedence; }
public ParametrizedCode(string code, OperatorPrecedence precedence = new OperatorPrecedence()) : this(new[] { code }, null, precedence) { }
public ParametrizedCode(string[] stringParts, CodeParameterInfo[] parameters, OperatorPrecedence operatorPrecence) { this.stringParts = stringParts; this.parameters = parameters; this.OperatorPrecedence = operatorPrecence; }