public string GetMethodBody(string methodId, IChainMethodArgsProvider provider, IComponentProvider components, IThrowCollection throwCollection) { var node = new CodeNodeBuilder(); node.If($"{IsInvert()}({GetConditionString(provider)})", node => { node.Return(provider.InvokeNextMethod()); }); node.Return(DeserializeResult.Success.ToDisplayString()); return(node.ToString()); string IsInvert() => _isInverted ? "!" : ""; }
private string GetConditionString(IChainMethodArgsProvider provider) => _condition.GetEvalString(provider[typeof(TypeSourceArgs)], Type, _expression);