示例#1
0
        public static IEnumerable <ObjectName> AllVariables(Expression expression)
        {
            var visitor = new VariableVisitor();

            visitor.VisitExpression(expression);
            return(visitor.AllVariables.AsEnumerable());
        }
示例#2
0
        /// <summary>
        /// Gets the variables used in the condition.
        /// </summary>
        /// <returns></returns>
        private IEnumerable <VariableUse> GetVariables()
        {
            VariableVisitor visitor = new VariableVisitor();

            astElement.VisitMe(visitor);

            return(visitor.Variables);
        }
        /// <summary>
        ///     Creates the interfaces of the the EFS model
        /// </summary>
        /// <param name="args"></param>
        /// <returns>the error code of the program</returns>
        private static int Main(string[] args)
        {
            int retVal = 0;

            try
            {
                Console.Out.WriteLine("EFS Interfaces");

                // Load the dictionaries provided as parameters
                EfsSystem efsSystem = EfsSystem.Instance;
                Util.PleaseLockFiles = false;
                foreach (string arg in args)
                {
                    Console.Out.WriteLine("Loading dictionary " + arg);

                    Dictionary dictionary = Util.Load(efsSystem, new Util.LoadParams(arg)
                    {
                        LockFiles = false,
                        Errors = null,
                        UpdateGuid = false,
                        ConvertObsolete = false
                    });
                    if (dictionary == null)
                    {
                        Console.Out.WriteLine("Cannot load dictionary " + arg);
                        return -1;
                    }
                }

                TextWriter writer = new StreamWriter("Interface.out");
                VariableVisitor visitor = new VariableVisitor(writer);
                foreach (Dictionary dictionary in EfsSystem.Instance.Dictionaries)
                {
                    visitor.visit(dictionary, true);
                }
            }
            finally
            {
                Util.UnlockAllFiles();
            }

            return retVal;
        }
示例#4
0
        /// <summary>
        ///     Creates the interfaces of the the EFS model
        /// </summary>
        /// <param name="args"></param>
        /// <returns>the error code of the program</returns>
        private static int Main(string[] args)
        {
            int retVal = 0;

            try
            {
                Console.Out.WriteLine("EFS Interfaces");

                // Load the dictionaries provided as parameters
                EfsSystem efsSystem = EfsSystem.Instance;
                Util.PleaseLockFiles = false;
                foreach (string arg in args)
                {
                    Console.Out.WriteLine("Loading dictionary " + arg);

                    Dictionary dictionary = Util.Load(efsSystem, new Util.LoadParams(arg)
                    {
                        LockFiles       = false,
                        Errors          = null,
                        UpdateGuid      = false,
                        ConvertObsolete = false
                    });
                    if (dictionary == null)
                    {
                        Console.Out.WriteLine("Cannot load dictionary " + arg);
                        return(-1);
                    }
                }

                TextWriter      writer  = new StreamWriter("Interface.out");
                VariableVisitor visitor = new VariableVisitor(writer);
                foreach (Dictionary dictionary in EfsSystem.Instance.Dictionaries)
                {
                    visitor.visit(dictionary, true);
                }
            }
            finally
            {
                Util.UnlockAllFiles();
            }

            return(retVal);
        }
示例#5
0
        public override ExecutionContext VisitProgramme(Cosmos.ProgrammeContext context)
        {
            var result = new ExecutionContext {
                Success = false
            };

            try
            {
                variableVisitor = new VariableVisitor(parser, executionConsole);

                expressionVisitor = new ExpressionVisitor(variableVisitor, parser, random);
                variableVisitor.ExpressionVisitor = expressionVisitor;

                base.VisitProgramme(context);
                result.Success = true;
            }
            catch (CosmosException e)
            {
                parser.ErrorListener.Error(e);
            }

            return(result);
        }
示例#6
0
 public static IEnumerable<ObjectName> AllVariables(Expression expression)
 {
     var visitor = new VariableVisitor();
     visitor.VisitExpression(expression);
     return visitor.AllVariables.AsEnumerable();
 }