コード例 #1
0
ファイル: BindingLevel.cs プロジェクト: konsultaner/REC
        public AddSuccess AddStrongerThanRelation(IBindingLevel weaker)
        {
            var res = weaker.AddWeakerThanRelation(this);

            switch (res)
            {
            case AddSuccess.ConflictingWeaker:
                return(AddSuccess.ConflictingStronger);

            case AddSuccess.ConflictingStronger:
                return(AddSuccess.ConflictingWeaker);

            default:
                return(res);
            }
        }
コード例 #2
0
ファイル: BindingLevel.cs プロジェクト: konsultaner/REC
        public AddSuccess AddSameRelation(IBindingLevel isame)
        {
            var same      = (BindingLevel)isame;
            var sameGroup = same.EnsureGroup();
            var res       = EnsureGroup().AddSame(sameGroup);

            if (res == AddSuccess.Success)
            {
                foreach (var level in sameGroup.Levels)
                {
                    level._group = _group;
                    _group.AddLevel(level);
                }
                sameGroup.Clear();
            }
            return(res);
        }
コード例 #3
0
ファイル: BindingLevel.cs プロジェクト: konsultaner/REC
        public int CompareTo(IBindingLevel iother)
        {
            var other = (BindingLevel)iother;

            if (_group == other._group)
            {
                return(0);
            }
            if (_group == null)
            {
                return(-1);
            }
            if (other._group == null)
            {
                return(1);
            }
            return(_group.CompareTo(other._group));
        }
コード例 #4
0
ファイル: BindingLevel.cs プロジェクト: konsultaner/REC
        public AddSuccess AddWeakerThanRelation(IBindingLevel istronger)
        {
            var stronger = (BindingLevel)istronger;

            return(EnsureGroup().AddStronger(stronger.EnsureGroup()));
        }