Пример #1
0
        public override IESObject Execute(ESDomain domain)
        {
            var ret = ESDefault.Value;

            while (true)
            {
                if (_condition.IsTrue(domain))
                {
                    ret = _entry.Execute(domain);
                }
                else
                {
                    return(ret);
                }
                if (domain.IsBreak)
                {
                    domain.IsBreak = false;
                    return(ret);
                }
                if (domain.IsReturn)
                {
                    return(ret);
                }
            }
        }
Пример #2
0
 public override IESObject Execute(ESDomain domain)
 {
     if (_condition.IsTrue(domain))
     {
         return(_branch.Execute(domain));
     }
     else
     {
         return(ESDefault.Value);
     }
 }
Пример #3
0
 public override IESObject Execute(ESDomain domain)
 {
     if (_condition.IsTrue(domain))
     {
         return(_branch1.Execute(domain));
     }
     else
     {
         return(_branch2.Execute(domain));
     }
 }
Пример #4
0
 public override bool IsTrue(ESDomain domain)
 {
     return(!_target.IsTrue(domain));
 }