ClrPlus.Scripting.MsBuild.Utility.MsBuildMap.BoolMetadataRoute C# (CSharp) Метод

BoolMetadataRoute() статический приватный Метод

static private BoolMetadataRoute ( this metadataName, string defaultValue = null ) : ToRoute
metadataName this
defaultValue string
Результат ToRoute
        internal static ToRoute BoolMetadataRoute(this string metadataName, string defaultValue = null)
        {
            return metadataName.MapTo<ProjectItemDefinitionElement>(pide => {
                foreach(var m in pide.Metadata) {
                    var metadata = m;
                    if(metadata.Name == metadataName) {
                        return new Accessor(() => metadata.Value.IsPositive(), (v) => metadata.Value = v.ToString().IsPositive().ToString());
                    }
                }
                var n = pide.AddMetadata(metadataName, defaultValue ?? "");
                return new Accessor(() => n.Value.IsPositive(), (v) => n.Value = v.ToString().IsPositive().ToString());
            });
        }