public bool VisitExprTypeFixSizeString(ExprTypeFixSizeString expr, TCtx arg) { var res = this.Visit(expr, "TypeFixSizeString", arg, out var argOut); this.VisitPlainProperty("Size", expr.Size, argOut); this.VisitPlainProperty("IsUnicode", expr.IsUnicode, argOut); this._visitor.EndVisitExpr(expr, arg); return(res); }
public override bool VisitExprTypeFixSizeString(ExprTypeFixSizeString exprTypeFixSizeString, IExpr?arg) { if (exprTypeFixSizeString.IsUnicode) { this.AppendName("nchar"); } else { this.AppendName("char"); } this.Builder.Append('('); this.Builder.Append(exprTypeFixSizeString.Size.ToString()); this.Builder.Append(')'); return(true); }
public static ExprTypeFixSizeString WithIsUnicode(this ExprTypeFixSizeString original, Boolean newIsUnicode) => new ExprTypeFixSizeString(size: original.Size, isUnicode: newIsUnicode);
public static ExprTypeFixSizeString WithSize(this ExprTypeFixSizeString original, Int32 newSize) => new ExprTypeFixSizeString(size: newSize, isUnicode: original.IsUnicode);
public abstract bool VisitExprTypeFixSizeString(ExprTypeFixSizeString exprTypeFixSizeString, IExpr?arg);
TRes IExprTypeVisitor <TRes, ExprValueTypeAnalyzerCtx <TRes, TCtx> > .VisitExprTypeFixSizeString(ExprTypeFixSizeString exprTypeFixSizeString, ExprValueTypeAnalyzerCtx <TRes, TCtx> ctx) { return(ctx.ValueVisitor.VisitString(ctx.Ctx, null, exprTypeFixSizeString.Size, true)); }