Exemplo n.º 1
0
        protected override STbz3 HandleStrLiteral(Frontend.AST.strconst e)
        {
            //throw new NotImplementedException();
            //create an STb that removes the input and just outputs the output string
            STbz3 res  = new STbz3(this.stb.Solver, "fixed", this.charsort, this.charsort, this.stb.Solver.UnitSort, this.stb.Solver.UnitConst, 0);
            var   rule = new BaseRule <Expr>(Sequence <Expr> .Empty, this.stb.Solver.UnitConst, 0);

            res.AssignRule(0, rule);
            List <Expr> elems = new List <Expr>();

            foreach (var c in e.val)
            {
                elems.Add(this.stb.Solver.MkCharExpr(c));
            }
            var yield = new Sequence <Expr>(elems.ToArray());
            var frule = new BaseRule <Expr>(yield, this.stb.Solver.UnitConst, 0);

            res.AssignFinalRule(0, frule);
            return(res);
        }
Exemplo n.º 2
0
 protected override STz3 HandleStrLiteral(Frontend.AST.strconst e)
 {
     throw new NotImplementedException();
 }