1 /*
2 * Tentackle - https://tentackle.org
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
18
19 package org.tentackle.dbms.dsl;
20
21 /**
22 * An element of an SQL query.
23 * <p>
24 * Elements render themselves to SQL-code and register their parameters
25 * in exactly the order of the question marks they emit.
26 * Applications may implement this interface to extend the DSL by
27 * constructs that are not covered yet.
28 *
29 * @author harald
30 */
31 @FunctionalInterface
32 public interface SqlElement {
33
34 /**
35 * Renders this element into the given context.
36 *
37 * @param context the render context
38 */
39 void render(RenderContext context);
40
41 }