private bool HandleDynamic(CodeUsingStatement obj, Context ctx) { return(HandleIfTrue(() => { HandleUsing(obj, ctx); }, obj, ctx, CanHandleUsing, false)); }
/// <inheritdoc/> protected override void HandleUsing(CodeUsingStatement obj, Context ctx) { ctx.Writer.Write("using ("); WriteTypeOrVar(obj.Type, ctx); ctx.Writer.Write($" {obj.VariableName.AsCsId()} = "); ctx.HandlerProvider.ExpressionHandler.Handle(obj.InitializerExpression, ctx); ctx.Writer.Write(")"); CSharpUtils.HandleStatementCollection(obj.Statements, ctx, true, false); }
/// <inheritdoc /> protected override void HandleUsing(CodeUsingStatement obj, Context ctx) { ctx.Writer.Write($"Using {obj.VariableName} As "); if (!GeneralUtils.IsNullOrVoidType(obj.Type)) { ctx.HandlerProvider.TypeReferenceHandler.Handle(obj.Type, ctx); ctx.Writer.Write(" = "); } ctx.HandlerProvider.ExpressionHandler.Handle(obj.InitializerExpression, ctx); VisualBasicUtils.HandleStatementCollection(obj.Statements, ctx, BlockType.Using, false); }
public int VisitUsing(CodeUsingStatement codeUsingStatement) { return(0); }
internal CodeUsingStatement Using( IEnumerable<CodeStatement> initializers, Action xlatUsingBody) { var u = new CodeUsingStatement(); Scope.Add(u); u.Initializers.AddRange(initializers); var old = Scope; Scope = u.Statements; xlatUsingBody(); Scope = old; return u; }
/// <inheritdoc cref="ICodeObjectHandler{T}.Handle"/> protected abstract void HandleUsing(CodeUsingStatement obj, Context ctx);