java.lang.Object
io.github.projectunified.craftcommand.processor.Naming

public final class Naming extends Object
Pure naming utilities for generated fields, methods, and identifiers.

Centralizes the naming conventions used across the code generator so that the same logical concept always maps to the same generated name. All methods are static and side-effect free.

  • Method Summary

    Modifier and Type
    Method
    Description
    static String
    classPath(com.palantir.javapoet.ClassName className)
    Gets the class path prefix for a class name.
    static String
    executeHelper(com.palantir.javapoet.ClassName nestedClass)
    Gets the execution helper method name for a nested subcommand class.
    static String
    Sanitizes a string into a valid Java identifier.
    static String
    simpleName(com.palantir.javapoet.TypeName typeName)
    Gets the simple name of a type name.
    static String
    subcommandField(com.palantir.javapoet.ClassName nestedClass)
    Gets the field name for a nested subcommand class instance.
    static String
    suggestHelper(com.palantir.javapoet.ClassName nestedClass)
    Gets the suggestion routing helper method name for a nested subcommand class.
    static String
    suggestMethod(String classModelPath, String methodOrDefault, int paramIndex)
    Gets the helper method name for a parameter suggestion provider.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • simpleName

      public static String simpleName(com.palantir.javapoet.TypeName typeName)
      Gets the simple name of a type name.
      Parameters:
      typeName - the type name
      Returns:
      the simple name of a TypeName (text after the last dot).
    • subcommandField

      public static String subcommandField(com.palantir.javapoet.ClassName nestedClass)
      Gets the field name for a nested subcommand class instance.
      Parameters:
      nestedClass - the class name of the nested command
      Returns:
      the field name for a nested subcommand class instance, e.g. subInstance_outer_inner for class Outer.Inner.
    • suggestMethod

      public static String suggestMethod(String classModelPath, String methodOrDefault, int paramIndex)
      Gets the helper method name for a parameter suggestion provider.
      Parameters:
      classModelPath - the lowercased dot-joined class simple-names
      methodOrDefault - the subcommand name, or "default" for the default action
      paramIndex - the zero-based parameter index
      Returns:
      the helper method name for a parameter's suggestion provider.
    • classPath

      public static String classPath(com.palantir.javapoet.ClassName className)
      Gets the class path prefix for a class name.
      Parameters:
      className - the class name
      Returns:
      the lowercased dot-joined simple-names of a class, used as a disambiguating prefix for generated identifiers.
    • executeHelper

      public static String executeHelper(com.palantir.javapoet.ClassName nestedClass)
      Gets the execution helper method name for a nested subcommand class.
      Parameters:
      nestedClass - the nested class name
      Returns:
      "execute_" + lowercased class path — the routing helper for a nested subcommand class.
    • suggestHelper

      public static String suggestHelper(com.palantir.javapoet.ClassName nestedClass)
      Gets the suggestion routing helper method name for a nested subcommand class.
      Parameters:
      nestedClass - the nested class name
      Returns:
      "suggest_" + lowercased class path — the suggestion routing helper for a nested subcommand class.
    • sanitizeIdentifier

      public static String sanitizeIdentifier(String name)
      Sanitizes a string into a valid Java identifier.
      Parameters:
      name - the input name
      Returns:
      a valid Java identifier derived from an arbitrary command name (replaces - and spaces with _).