public override Frame CreateBuildFrame() { var variables = new ResolverVariables(); var elements = Elements.Select(x => variables.Resolve(x, BuildMode.Dependency)).ToArray(); variables.MakeNamesUnique(); return(new ListAssignmentFrame <T>(this, elements) { ReturnCreated = true }); }
private void useInlineConstruction() { var variables = new ResolverVariables(_fields); foreach (var standin in _standins) { var variable = variables.Resolve(standin.Instance, BuildMode.Inline); standin.UseInner(variable); } variables.OfType <InjectedServiceField>().Each(field => { var family = _services.FindAll(field.VariableType); field.IsOnlyOne = family.Length == 1; }); variables.MakeNamesUnique(); }