コード例 #1
0
        public static Context Parse(ResourceTree resourceTree)
        {
            var context = new Context();

            if (resourceTree.Location != null)
            {
                context.DefaultLocation = resourceTree.Location;
            }

            foreach (ResourceSpecification resourceSpecification in resourceTree.Resources)
            {
                IResourceParser parser = Resolver
                                         .GetReference(resourceSpecification.ResourceType)
                                         .GetParser();
                ParsedResource resource = parser.ParseResourceSpecification(context, resourceSpecification);
                context.Resources.Add(resource.Resource);
                context.ExplicitDependencyRequirements.Add(resource.Resource, resource.ExplicitDependenciesToBeInjected.ToList());
            }

            return(context);
        }
コード例 #2
0
 public ParsedResource ParseResourceSpecification(Context context, ResourceSpecification specification)
     => parser.ParseResourceSpecification(context, specification);