Esempio n. 1
0
        public static IResPipelineDecl Build(
            ILazyFactory lazyFactory,
            ILazy <IResModuleDecl> module,
            SourceRange range,
            Identifier name,
            Action <ResPipelineDeclBuilder> action)
        {
            var builder = new ResPipelineDeclBuilder(
                lazyFactory,
                module,
                range,
                name);

            builder.AddAction(() => action(builder));
            builder.DoneBuilding();
            return(builder.Value);
        }
Esempio n. 2
0
        public ResFacetDeclBuilder(
            ILazyFactory lazyFactory,
            ResPipelineDeclBuilder parent,
            IResPipelineRef originalPipeline)
            : base(lazyFactory)
        {
            AddDependency(parent);
            DoneBuilding(NewBuilderPhase.Dependencies);

            _originalPipeline = originalPipeline;

            var resFacetDecl = new ResFacetDecl(
                Lazy.Value(originalPipeline),
                NewLazy(() => (from b in _directBaseFacets select b.Value).Eager()),
                NewLazy(() => (from mngb in _memberNameGroups.Values select mngb.Value).Eager()));

            SetValue(resFacetDecl);
        }
Esempio n. 3
0
 public ResPipelineBuilderRef(
     ResPipelineDeclBuilder container)
 {
     _container = container;
 }