[to-string] add super.toString() template for Groovy

This commit is contained in:
Daniil Ovchinnikov
2015-11-12 21:52:29 +03:00
parent c18481f31a
commit 3663197387
2 changed files with 39 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
public java.lang.String toString() {
#set($d = "$")
#if ( $members.size() > 0 )
#set ( $i = 0 )
return """\
$classname{
#foreach( $member in $members )
#if( $i > 0 ),
#end
#if ( $member.objectArray )
$member.name=${d}{java.util.Arrays.toString($member.accessor)}##
#elseif ( $member.primitiveArray)
$member.name=${d}{java.util.Arrays.toString($member.accessor)}##
#elseif ( $member.string )
$member.name='$d$member.accessor'##
#else
$member.name=$d${member.accessor}##
#end
#set( $i = $i + 1 )
#end
#if( $class.hasSuper )
#if( $i > 0 ),
#end
super=${d}{super.toString()}##
#end
}"""
#else
#if( $class.hasSuper )
return "$classname{##
super=${d}{super.toString()}##
}"
#else
return "$classname{}"
#end
#end
}

View File

@@ -36,6 +36,7 @@ public class ToStringTemplatesManager extends TemplatesManager {
private static final String DEFAULT_CONCAT = "DefaultConcatMember.vm";
private static final String DEFAULT_CONCAT_GROOVY = "/org/jetbrains/java/generate/template/toString/DefaultConcatMemberGroovy.vm";
private static final String DEFAULT_CONCAT_SUPER = "/org/jetbrains/java/generate/template/toString/DefaultConcatMemberSuper.vm";
private static final String DEFAULT_CONCAT_SUPER_GROOVY = "/org/jetbrains/java/generate/template/toString/DefaultConcatMemberSuperGroovy.vm";
private static final String DEFAULT_BUFFER = "/org/jetbrains/java/generate/template/toString/DefaultBuffer.vm";
private static final String DEFAULT_BUILDER = "/org/jetbrains/java/generate/template/toString/DefaultBuilder.vm";
private static final String DEFAULT_TOSTRINGBUILDER = "/org/jetbrains/java/generate/template/toString/DefaultToStringBuilder.vm";
@@ -60,6 +61,7 @@ public class ToStringTemplatesManager extends TemplatesManager {
new TemplateResource("Objects.toStringHelper (Guava)", readFile(DEFAULT_GUAVA), true),
new TemplateResource("MoreObjects.toStringHelper (Guava 18+)", readFile(DEFAULT_GUAVA_18), true),
new TemplateResource("Groovy: String concat (+)", readFile(DEFAULT_CONCAT_GROOVY), true),
new TemplateResource("Groovy: String concat (+) and super.toString()", readFile(DEFAULT_CONCAT_SUPER_GROOVY), true),
};
}
catch (IOException e) {