Skip to content

Instantly share code, notes, and snippets.

@exoego
Created March 9, 2015 13:29
Show Gist options
  • Save exoego/2fdeb5ca3255f786fb9e to your computer and use it in GitHub Desktop.
Save exoego/2fdeb5ca3255f786fb9e to your computer and use it in GitHub Desktop.
Intellij IDEA Live Templates for Java8 Stream#collect
<templateSet group="Stream">
<template name=".toList" value=".collect(java.util.stream.Collectors.toList())" description="Stream#collect(toList())" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".toSet" value=".collect(java.util.stream.Collectors.toSet())" description="Stream#collect(toSet())" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".join" value=".collect(java.util.stream.Collectors.joining(&quot;$END$&quot;))" description="Stream#collect(joining(&quot;separator&quot;))" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".groupBy" value=".collect(java.util.stream.Collectors.groupingBy(e -&gt; $END$))" description="Stream#collect(groupingBy(e -&gt; e.getKey()))" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".maxBy" value=".collect(java.util.stream.Collectors.maxBy((left,right) -&gt; $END$))" description="Stream#collect(maxBy(comparator))" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".minBy" value=".collect(java.util.stream.Collectors.minBy((left,right) -&gt; $END$))" description="Stream#collect(maxBy(comparator))" toReformat="false" toShortenFQNames="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".partitionBy" value=".collect(java.util.stream.Collectors.partitioningBy(e -&gt; $END$))" description="Stream#collect(partitionBy(pred)))" toReformat="false" toShortenFQNames="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".toMap" value=".collect(java.util.stream.Collectors.toMap(e -&gt;$KEY_MAPPER$, e -&gt; $END$))" description="Stream#collect(toMap(keyMapper, valueMapper)" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<variable name="KEY_MAPPER" expression="" defaultValue="e" alwaysStopAt="true" />
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".sum" value=".collect(java.util.stream.Collectors.summingLong(e -&gt; $END$))" description="Stream#collect(summingLong(toLong)))" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".average" value=".collect(java.util.stream.Collectors.averagingLong(e -&gt; $END$))" description="Stream#collect(averageLong(toLong))" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
<template name=".reduce" value=".collect(java.util.stream.Collectors.reducing((left,right) -&gt; $END$))" description="Stream#collect(reduce(binaryReducer))" toReformat="true" toShortenFQNames="true" useStaticImport="true">
<context>
<option name="JAVA_CODE" value="true" />
<option name="JAVA_STATEMENT" value="false" />
<option name="JAVA_EXPRESSION" value="false" />
<option name="JAVA_DECLARATION" value="false" />
<option name="JAVA_COMMENT" value="false" />
<option name="JAVA_STRING" value="false" />
<option name="COMPLETION" value="false" />
</context>
</template>
</templateSet>
@exoego
Copy link
Author

exoego commented Mar 9, 2015

To use this xml, it should be stored in an appropriate described in this article.
https://www.jetbrains.com/idea/help/live-templates.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment