Beispiel #1
0
            internal void Resolve(Resolver resolver)
            {
                resolver.SetParameter("conf", this);
                resolver.SetParameter("target", Target);
                resolver.Resolve(this);
                resolver.RemoveParameter("conf");
                resolver.RemoveParameter("target");

                Util.ResolvePath(Solution.SharpmakeCsPath, ref SolutionPath);
                if (Solution.IsFileNameToLower)
                {
                    SolutionFileName = SolutionFileName.ToLower();
                }
            }
Beispiel #2
0
        public string ResolveString(string input, Configuration conf = null, ITarget target = null)
        {
            Resolver resolver = new Resolver();

            resolver.SetParameter("solution", this);
            if (conf != null)
            {
                resolver.SetParameter("conf", conf);
            }
            if (target != null)
            {
                resolver.SetParameter("target", target);
            }
            return(resolver.Resolve(input));
        }
Beispiel #3
0
        internal void Resolve()
        {
            if (_resolved)
            {
                return;
            }

            Resolver resolver = new Resolver();

            resolver.SetParameter("solution", this);
            resolver.Resolve(this);

            if (PerforceRootPath != null)
            {
                Util.ResolvePath(SharpmakeCsPath, ref _perforceRootPath);
            }

            foreach (Solution.Configuration conf in Configurations)
            {
                conf.Resolve(resolver);
            }

            foreach (var extraItemKey in ExtraItems.Keys.ToList())
            {
                Strings values = new Strings(ExtraItems[extraItemKey]);
                foreach (string value in values)
                {
                    string newValue = resolver.Resolve(value);
                    values.UpdateValue(value, newValue);
                }
                ExtraItems[extraItemKey] = values;
            }

            _resolved = true;
        }
Beispiel #4
0
        internal void Resolve()
        {
            if (_resolved)
            {
                return;
            }

            using (Builder.Instance.CreateProfilingScope("ResolveSolution"))
            {
                Resolver resolver = new Resolver();
                resolver.SetParameter("solution", this);
                resolver.Resolve(this);

                foreach (Solution.Configuration conf in Configurations)
                {
                    conf.Resolve(resolver);
                }

                foreach (var extraItemKey in ExtraItems.Keys.ToList())
                {
                    Strings values = new Strings(ExtraItems[extraItemKey]);
                    foreach (string value in values)
                    {
                        string newValue = resolver.Resolve(value);
                        values.UpdateValue(value, newValue);
                    }
                    ExtraItems[extraItemKey] = values;
                }

                _resolved = true;
            }
        }
Beispiel #5
0
            public ScopedParameterGroup(Resolver resolver, params VariableAssignment[] assignments)
            {
                _resolver = resolver;

                var names = new List <string>();

                foreach (var assignment in assignments)
                {
                    _resolver.SetParameter(assignment.Identifier, assignment.Value);
                    names.Add(assignment.Identifier);
                }

                _names = names.ToArray();
            }
Beispiel #6
0
        internal void Resolve()
        {
            if (_resolved)
            {
                return;
            }

            Resolver resolver = new Resolver();

            resolver.SetParameter("solution", this);
            resolver.Resolve(this);

            if (PerforceRootPath != null)
            {
                Util.ResolvePath(SharpmakeCsPath, ref _perforceRootPath);
            }

            foreach (Solution.Configuration conf in Configurations)
            {
                conf.Resolve(resolver);
            }

            _resolved = true;
        }
Beispiel #7
0
 public ScopedParameter(Resolver resolver, string name, object value)
 {
     _resolver = resolver;
     _name     = name;
     _resolver.SetParameter(_name, value);
 }