parseGposTable function

Map<String, dynamic> parseGposTable(
  1. dynamic data,
  2. dynamic start
)

Implementation

Map<String, dynamic> parseGposTable(data, start) {
    start = start ?? 0;
    var p = new Parser(data, start);
    var tableVersion = p.parseVersion(1);
    argument(tableVersion == 1 || tableVersion == 1.1, 'Unsupported GPOS table version ${tableVersion}');

    if (tableVersion == 1) {
        return {
            "version": tableVersion,
            "scripts": p.parseScriptList(),
            "features": p.parseFeatureList(),
            "lookups": p.parseLookupList(subtableParsers)
        };
    } else {
        return {
            "version": tableVersion,
            "scripts": p.parseScriptList(),
            "features": p.parseFeatureList(),
            "lookups": p.parseLookupList(subtableParsers),
            "variations": p.parseFeatureVariationsList()
        };
    }

}