/// <summary> /// Constructs the renderer with required dependencies /// </summary> /// <param name="functionRepository">The function repository</param> /// <param name="expressionEvaluator">The expression evaluator</param> public ConditionalBindingRenderer ( IFunctionRepository functionRepository, BooleanExpressionEvaluator expressionEvaluator ) : base(functionRepository) { Validate.IsNotNull(expressionEvaluator); _expressionEvaluator = expressionEvaluator; }
/// <summary> /// Constructs the renderer with required dependencies /// </summary> /// <param name="functionRepository">The function repository</param> /// <param name="expressionEvaluator">The expression evaluator</param> /// <param name="collectionRenderer">The block collection renderer</param> public WhileLoopRenderer ( IFunctionRepository functionRepository, BooleanExpressionEvaluator expressionEvaluator, BlockCollectionRenderer collectionRenderer ) : base(functionRepository) { Validate.IsNotNull(expressionEvaluator); Validate.IsNotNull(collectionRenderer); _expressionEvaluator = expressionEvaluator; _collectionRenderer = collectionRenderer; }
/// <summary> /// Constructs the renderer with required dependencies /// </summary> /// <param name="functionRepository">The function repository</param> /// <param name="templateRepository">The template repository</param> public BlockCollectionRenderer ( IFunctionRepository functionRepository, IRegisteredTemplateRepository templateRepository ) { Validate.IsNotNull(functionRepository); Validate.IsNotNull(templateRepository); var expressionEvaluator = new BooleanExpressionEvaluator ( functionRepository ); var commentRenderer = new CommentRenderer ( functionRepository ); var contentRenderer = new ContentRenderer ( functionRepository ); var bindingRenderer = new ModelBindingRenderer ( functionRepository ); var condtionalBindingRenderer = new ConditionalBindingRenderer ( functionRepository, expressionEvaluator ); var variableRenderer = new VariableRenderer ( functionRepository ); var variableReassignmentRenderer = new VariableReassignmentRenderer ( functionRepository ); var variableIncrementerRenderer = new VariableIncrementerRenderer ( functionRepository ); var variableDecrementerRenderer = new VariableDecrementerRenderer ( functionRepository ); var flagRenderer = new FlagRenderer ( functionRepository ); var functionRenderer = new FunctionRenderer ( functionRepository ); var eachLoopRenderer = new ForEachLoopRenderer ( functionRepository, this ); var whileLoopRenderer = new WhileLoopRenderer ( functionRepository, expressionEvaluator, this ); var ifStatementRenderer = new IfStatementRenderer ( functionRepository, expressionEvaluator, this ); var partialRenderer = new PartialRenderer ( functionRepository, templateRepository, this ); _renderers = new List <IBlockRenderer>() { commentRenderer, contentRenderer, bindingRenderer, condtionalBindingRenderer, variableRenderer, variableReassignmentRenderer, variableIncrementerRenderer, variableDecrementerRenderer, flagRenderer, functionRenderer, eachLoopRenderer, whileLoopRenderer, ifStatementRenderer, partialRenderer }; }