public void AddPositiveEdgeStatement(Decision <TIn, TOut> decision, Decision <TIn, TOut> positiveDecision, bool thickLine = false)
        {
            var fromNode   = $"{decision} [{decision.GetHashCode()}]";
            var toNode     = $"{positiveDecision} [{decision.GetHashCode()}]";
            var properties = new Dictionary <Id, Id>
            {
                { "label", true.ToString() },
                { "color", "green" }
            };

            if (thickLine)
            {
                properties.Add("penwidth", "10");
            }

            Graph = Graph.Add(new EdgeStatement(fromNode, toNode, properties.ToImmutableDictionary()));
        }
예제 #2
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (Died != false)
            {
                hash ^= Died.GetHashCode();
            }
            if (Respawned != false)
            {
                hash ^= Respawned.GetHashCode();
            }
            if (decision_ != null)
            {
                hash ^= Decision.GetHashCode();
            }
            hash ^= path_.GetHashCode();
            if (HatChanged != false)
            {
                hash ^= HatChanged.GetHashCode();
            }
            if (ClothesChanged != false)
            {
                hash ^= ClothesChanged.GetHashCode();
            }
            if (ShoesChanged != false)
            {
                hash ^= ShoesChanged.GetHashCode();
            }
            if (WeaponChanged != false)
            {
                hash ^= WeaponChanged.GetHashCode();
            }
            if (AccessoryChanged != false)
            {
                hash ^= AccessoryChanged.GetHashCode();
            }
            hash ^= attackLocations_.GetHashCode();
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }