/// <summary> /// Returns the name of the function f <op> g, where f is the current /// function name, g is the given one, and <op> is a binary operation. /// </summary> public FunctionName Compose(string operation, FunctionName rightFunction) => new FunctionName( $"{this.namePattern} {operation} {rightFunction.namePattern}");
/// <summary> /// Returns the name of the function f(g), where f is the current /// function name, and g is the given one. /// </summary> public FunctionName Compose(FunctionName innerFunction) => new FunctionName( this.namePattern.Replace( ArgumentPlaceholder, innerFunction.namePattern));