package io.sweers.barber;

/**
 * These represent the different attribute kinds.
 * <p>
 * {@link #STANDARD} represents the default behavior.
 * (e.g. a float type will result in the generate code using getFloat())
 * <p>
 * The remaining kinds are used to indicate that the given type represents that type of attribute.
 * (e.g. a color kind indicates that even though it's an int, it should be retrieved via getColor())
 */
public enum Kind {

    // The default behavior. Will call get<target type>(...)
    STANDARD,

    // int getColor(...)
    COLOR,

    // float getDimension(...)
    DIMEN,

    // int get(...)
    DIMEN_PIXEL_OFFSET,

    // int get(...)
    DIMEN_PIXEL_SIZE,

    // float get(...)
    FRACTION,

    // int get(...)
    INTEGER,

    // int get(...)
    RES_ID,

    // String get(...)
    NON_RES_STRING
}

@@ -601,32 +601,52 @@
 %0A%0A    // int get
+DimensionPixelOffset
 (...)%0A    DIMEN_
@@ -666,32 +666,50 @@
 %0A%0A    // int get
+DimensionPixelSize
 (...)%0A    DIMEN_
@@ -733,24 +733,32 @@
 // float get
+Fraction
 (...)%0A    FR
@@ -772,32 +772,39 @@
 %0A%0A    // int get
+Integer
 (...)%0A    INTEGE
@@ -817,24 +817,34 @@
   // int get
+ResourceId
 (...)%0A    RE
@@ -867,16 +867,33 @@
 ring get
+NonResourceString
 (...)%0A  

Update Kind docs