public static IAminoAcidResult Three(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 0) throw new InvalidArgumentCount(); return new AminoAcidResult(3); }
public static IAminoAcidResult RegistryRead(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 0) throw new InvalidArgumentCount(); var registry = functionExecutionData.AvailableRegistries[0]; return registry.Read(); }
public static IAminoAcidResult SumConvertedCodonAndEvaluatedAminoAcid( IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 2) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.ConvertedCodon.Value.ToDouble(); var arg2 = arguments[1].Value.EvaluatedAminoAcid.Value; return new AminoAcidResult(arg1 + arg2); }
public static IAminoAcidResult RegistryWriteEvaluatedAminoAcid(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var registry = functionExecutionData.AvailableRegistries[0]; var arg = arguments[0].Value.EvaluatedAminoAcid.Value; var aminoAcidResult = new AminoAcidResult(value: arg); registry.Write(aminoAcidResult); return aminoAcidResult; }
public static IAminoAcidResult Difference2EvaluatedAminoAcids(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 2) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.EvaluatedAminoAcid.Value; var arg2 = arguments[1].Value.EvaluatedAminoAcid.Value; return new AminoAcidResult(arg1 - arg2); }
public static IAminoAcidResult PredecessorConvertedCodons(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.ConvertedCodon.Value.ToDouble(); return new AminoAcidResult(arg1 - 1); }
public static IAminoAcidResult PredecessorEvaluatedAminoAcid(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.EvaluatedAminoAcid.Value; return new AminoAcidResult(arg1 - 1); }
public static IAminoAcidResult RoundToNearestWholeNumberConvertedCodons(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.ConvertedCodon.Value.ToDouble(); return new AminoAcidResult(Math.Round(arg1, 0)); }
public static IAminoAcidResult RoundToNearestWholeNumberEvaluatedAminoAcid(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.EvaluatedAminoAcid.Value; return new AminoAcidResult(Math.Round(arg1, 0)); }
public static IAminoAcidResult AbsoluteEvaluatedAminoAcid(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.EvaluatedAminoAcid.Value; return new AminoAcidResult(Math.Abs(arg1)); }
public static IAminoAcidResult ForceNegateConvertedCodons(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 1) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.ConvertedCodon.Value.ToDouble(); return new AminoAcidResult(-Math.Abs(arg1)); }
public static IAminoAcidResult Power2ConvertedCodons(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 2) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.ConvertedCodon.Value.ToDouble(); var arg2 = arguments[1].Value.ConvertedCodon.Value.ToDouble(); return new AminoAcidResult(Math.Pow(arg1, arg2)); }
public static IAminoAcidResult Divide2ConvertedCodons(IFunctionExecutionData functionExecutionData, params IArgument[] arguments) { if (arguments.Length != 2) throw new InvalidArgumentCount(); var arg1 = arguments[0].Value.ConvertedCodon.Value.ToDouble(); var arg2 = arguments[1].Value.ConvertedCodon.Value.ToDouble(); if (arg2 == 0) return null; return new AminoAcidResult(arg1 / arg2); }