Пример #1
0
        public SymDiffInferVerb(SymDiffExtractVerb left, SymDiffExtractVerb right)
        {
            this.left  = left;
            this.right = right;

            this.abstractId = new AbstractId(this.GetType().Name, version, left.getOutputFile().ToString().ToString());      // Left should suffice to uniquely ID.
        }
Пример #2
0
        public SymDiffInferVerb(SymDiffExtractVerb left, SymDiffExtractVerb right)
        {
            this.left = left;
            this.right = right;

            this.abstractId = new AbstractId(this.GetType().Name, version, left.getOutputFile().ToString().ToString());      // Left should suffice to uniquely ID.
        }
Пример #3
0
        public SymDiffCombineVerb(SymDiffExtractVerb left, SymDiffExtractVerb right, SymDiffMergeConfigVerb merger)
        {
            this.left   = left;
            this.right  = right;
            this.merger = merger;

            abstractId = new AbstractId(this.GetType().Name, version, left.getOutputFile().ToString());      //- Naming one of the files should be sufficient to uniquely identify the combiner



            outputFile = mkOutputFile();
        }
Пример #4
0
        public static void BuildPipeline(IContextGeneratingVerb context, BuildObject input, out BuildObject bplFile, out IVerb workerVerb)
        {
            BoogieAsmVerifyVerb basmVerb = new BoogieAsmVerifyVerb(context, input, true);
            SymDiffExtractVerb left = new SymDiffExtractVerb(basmVerb, SymDiffExtractVerb.Mode.LEFT);
            SymDiffExtractVerb right = new SymDiffExtractVerb(basmVerb, SymDiffExtractVerb.Mode.RIGHT);
            SymDiffInferVerb infer = new SymDiffInferVerb(left, right);
            SymDiffMergeConfigVerb mergeConfig = new SymDiffMergeConfigVerb(basmVerb, infer);
            SymDiffCombineVerb combiner = new SymDiffCombineVerb(left, right, mergeConfig);
            SymDiffMergeVerb merger = new SymDiffMergeVerb(basmVerb, combiner);

            bplFile = merger.getOutputFile();
            workerVerb = merger;
        }
Пример #5
0
        public static void BuildPipeline(IContextGeneratingVerb context, BuildObject input, out BuildObject bplFile, out IVerb workerVerb)
        {
            BoogieAsmVerifyVerb    basmVerb    = new BoogieAsmVerifyVerb(context, input, true);
            SymDiffExtractVerb     left        = new SymDiffExtractVerb(basmVerb, SymDiffExtractVerb.Mode.LEFT);
            SymDiffExtractVerb     right       = new SymDiffExtractVerb(basmVerb, SymDiffExtractVerb.Mode.RIGHT);
            SymDiffInferVerb       infer       = new SymDiffInferVerb(left, right);
            SymDiffMergeConfigVerb mergeConfig = new SymDiffMergeConfigVerb(basmVerb, infer);
            SymDiffCombineVerb     combiner    = new SymDiffCombineVerb(left, right, mergeConfig);
            SymDiffMergeVerb       merger      = new SymDiffMergeVerb(basmVerb, combiner);

            bplFile    = merger.getOutputFile();
            workerVerb = merger;
        }
        public SymDiffCombineVerb(SymDiffExtractVerb left, SymDiffExtractVerb right, SymDiffMergeConfigVerb merger)
        {
            this.left   = left;
            this.right  = right;
            this.merger = merger;

            // Naming one of the files should be sufficient to uniquely identify the combiner.
            this.abstractId = new AbstractId(this.GetType().Name, version, left.getOutputFile().ToString());
            ////abstractId = String.Format("{0}(#{1},{2},{3},{4})",
            ////    this.GetType().Name,
            ////    version,
            ////    left.getOutputFile(),
            ////    right.getOutputFile(),
            ////    merger.getOutputFile());
            this.outputFile = this.mkOutputFile();
        }
Пример #7
0
        public SymDiffCombineVerb(SymDiffExtractVerb left, SymDiffExtractVerb right, SymDiffMergeConfigVerb merger)
        {
            this.left = left;
            this.right = right;
            this.merger = merger;

            // Naming one of the files should be sufficient to uniquely identify the combiner.
            this.abstractId = new AbstractId(this.GetType().Name, version, left.getOutputFile().ToString());
            ////abstractId = String.Format("{0}(#{1},{2},{3},{4})",
            ////    this.GetType().Name,
            ////    version,
            ////    left.getOutputFile(),
            ////    right.getOutputFile(),
            ////    merger.getOutputFile());
            this.outputFile = this.mkOutputFile();
        }