コード例 #1
0
        /// <summary>
        /// To Perform the static analysis on a single definition first.
        /// </summary>
        public void StaticAnalysis()
        {
            MustAbstract = Process.MustBeAbstracted();

            Channels = Process.GetChannels();

            GlobalVars = Process.GetGlobalVariables();

            if (AlphabetEvents != null)
            {
                if (AlphabetEvents.ContainsVariable())
                {
                    AlphabetsCalculable = false;
                    Alphabets           = null;
                }
                else
                {
                    Alphabets           = new HashSet <string>(new EventCollection(AlphabetEvents).EventNames);
                    AlphabetsCalculable = true;
                }
            }
            else
            {
                if (AlphabetsCalculable)
                {
                    //to check why is null here? forget the reason le.
                    Alphabets = Process.GetAlphabets(null);
                }
            }
        }
コード例 #2
0
 public override bool MustBeAbstracted()
 {
     return(FirstProcess.MustBeAbstracted() || SecondProcess.MustBeAbstracted());
 }
コード例 #3
0
ファイル: Hiding.cs プロジェクト: vu111293/pat-design
 public override bool MustBeAbstracted()
 {
     return(Process.MustBeAbstracted());
 }