1 /** 2 * 3 * 4 * Copyright: 5 * Copyright (c) 2018, Maxim Tyapkin. 6 * Authors: 7 * Maxim Tyapkin 8 * License: 9 * This software is licensed under the terms of the BSD 3-clause license. 10 * The full terms of the license can be found in the LICENSE.md file. 11 */ 12 13 module djinja.ast.visitor; 14 15 16 private 17 { 18 import djinja.ast.node; 19 } 20 21 22 23 mixin template VisitNode(T) 24 { 25 void visit(T); 26 } 27 28 29 interface IVisitor 30 { 31 static foreach(NT; NodeTypes) 32 { 33 mixin VisitNode!NT; 34 } 35 }