All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.robolectric.res.android.ResStringPoolHeader Maven / Gradle / Ivy

package org.robolectric.res.android;

import org.robolectric.res.android.ResourceTypes.ResChunk_header;

/**
 * Definition for a pool of strings. The data of this chunk is an array of uint32_t providing
 * indices into the pool, relative to stringsStart. At stringsStart are all of the UTF-16 strings
 * concatenated together; each starts with a uint16_t of the string's length and each ends with a
 * 0x0000 terminator. If a string is > 32767 characters, the high bit of the length is set meaning
 * to take those 15 bits as a high word and it will be followed by another uint16_t containing the
 * low word.
 *
 * 

If styleCount is not zero, then immediately following the array of uint32_t indices into the * string table is another array of indices into a style table starting at stylesStart. Each entry * in the style table is an array of ResStringPool_span structures. */ // transliterated from // https://android.googlesource.com/platform/frameworks/base/+/android-9.0.0_r12/include/androidfw/ResourceTypes.h#434 public class ResStringPoolHeader { public static final int SIZEOF = ResChunk_header.SIZEOF + 20; ResChunk_header header; // Number of strings in this pool (number of uint32_t indices that follow // in the data). int stringCount; // Number of style span arrays in the pool (number of uint32_t indices // follow the string indices). int styleCount; // Flags. // If set, the string index is sorted by the string values (based // on strcmp16()). public static final int SORTED_FLAG = 1 << 0; // String pool is encoded in UTF-8 public static final int UTF8_FLAG = 1 << 8; int flags; // Index from header of the string data. int stringsStart; // Index from header of the style data. int stylesStart; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy