 
     }
 
-    /// An enumeration representing the kVerticalPositionType features
+    /// A feature provider for changing the vertical position of characters.
     public enum VerticalPosition: FontFeatureProvider {
 
+        /// No vertical position adjustment is applied.
         case normal
+
+        /// Superscript (superior) glpyh variants are used, as in footnotes¹.
         case superscript
+
+        /// Subscript (inferior) glyph variants are used: vₑ.
         case `subscript`
+
+        /// Ordinal glyph variants are used, as in the common typesetting of 4th.
         case ordinals
+
+        /// Scientific inferior glyph variants are used: H₂O
         case scientificInferiors
 
         public func featureSettings() -> [(type: Int, selector: Int)] {

        }
    }

    /// An enumeration representing the kNumberCaseType features.
    public enum NumberCase: FontFeatureProvider {

        case upper
        case lower

        public func featureSettings() -> [(type: Int, selector: Int)] {


    }

    /// A feature provider for changing the number spacing, also known as figure spacing.
    public enum NumberSpacing: FontFeatureProvider {

        /// Monospaced numbers, also known as tabular figures, each take up the
        /// same amount of horizontal space, meaning that different numbers will
        /// line up when arranged in columns.
        case monospaced

        /// Proportionally spaced numbers, also known as proprotional figures,
        /// are of variable width. This makes them look better in most cases,
        /// but they should be avoided when numbers need to line up in columns.
        case proportional

        public func featureSettings() -> [(type: Int, selector: Int)] {
