Jackett.Irc.Models.AutoDL.Parser.SetVarIf.Execute C# (CSharp) Method

Execute() public method

public Execute ( ParserState state ) : bool
state ParserState
return bool
        public bool Execute(ParserState state)
        {
            if (regex == null)
            {
                var ok = string.Equals(state.Variables[varname], value, StringComparison.OrdinalIgnoreCase);
                if (ok)
                {
                    state.Variables[varname] = newValue;
                }

                logger.LogDebug($"{state.Tracker} SetVarIf eq ok {ok} var {varname} = {newValue}.");
            }
            else
            {
                var match = regex.Match(state.Variables[varname]);
                if (match.Success)
                    state.Variables[varname] = match.Groups[0].Value;

                logger.LogDebug($"{state.Tracker} SetVarIf regex ok {match.Success} var {varname} = {match.Value}.");
            }

            return true;
        }
    }