1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.mybatis.dynamic.sql.select.function;
17
18 import org.mybatis.dynamic.sql.BasicColumn;
19 import org.mybatis.dynamic.sql.BindableColumn;
20 import org.mybatis.dynamic.sql.render.RenderingContext;
21 import org.mybatis.dynamic.sql.util.FragmentAndParameters;
22
23 public class Lower<T> extends AbstractUniTypeFunction<T, Lower<T>> {
24
25 private Lower(BasicColumn column) {
26 super(column);
27 }
28
29 @Override
30 public FragmentAndParameters render(RenderingContext renderingContext) {
31 return column.render(renderingContext).mapFragment(s -> "lower(" + s + ")");
32 }
33
34 @Override
35 protected Lower<T> copy() {
36 return new Lower<>(column);
37 }
38
39 public static <T> Lower<T> of(BindableColumn<T> column) {
40 return new Lower<>(column);
41 }
42 }