diff options
author | Laria Carolin Chabowski <laria@laria.me> | 2018-08-02 17:05:57 +0200 |
---|---|---|
committer | Laria Carolin Chabowski <laria@laria.me> | 2018-08-02 17:05:57 +0200 |
commit | b8ee85038e1d42503a4359d6476595181b7afe38 (patch) | |
tree | d4846f481eafb20febc2ed594d9988ba7b748cbe /src/me/laria/code/idea_caseconv/CamelCaseAction.java | |
download | idea_caseconv-b8ee85038e1d42503a4359d6476595181b7afe38.tar.gz idea_caseconv-b8ee85038e1d42503a4359d6476595181b7afe38.tar.bz2 idea_caseconv-b8ee85038e1d42503a4359d6476595181b7afe38.zip |
Initial commit
Diffstat (limited to 'src/me/laria/code/idea_caseconv/CamelCaseAction.java')
-rw-r--r-- | src/me/laria/code/idea_caseconv/CamelCaseAction.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/me/laria/code/idea_caseconv/CamelCaseAction.java b/src/me/laria/code/idea_caseconv/CamelCaseAction.java new file mode 100644 index 0000000..93ca85b --- /dev/null +++ b/src/me/laria/code/idea_caseconv/CamelCaseAction.java @@ -0,0 +1,18 @@ +package me.laria.code.idea_caseconv; + +import org.jetbrains.annotations.NotNull; + +import java.util.Optional; + +public class CamelCaseAction extends SelectionReplacerAction { + @NotNull + public static String ucfirst(String s) { + s = s.toLowerCase(); + return s.substring(0, 1).toUpperCase().concat(s.substring(1)); + } + + @Override + protected String replace(String s) { + return WordSplitConverter.convert(s, "", (i, part) -> Optional.of(i == 0 ? part.toLowerCase() : ucfirst(part))); + } +} |