MCPcopy Create free account
hub / github.com/CyanogenMod/android_frameworks_base / writeTextSymbolClass

Function writeTextSymbolClass

tools/aapt/Resource.cpp:2123–2162  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2121}
2122
2123static status_t writeTextSymbolClass(
2124 FILE* fp, const sp<AaptAssets>& assets, bool includePrivate,
2125 const sp<AaptSymbols>& symbols, const String8& className)
2126{
2127 size_t i;
2128 status_t err = NO_ERROR;
2129
2130 size_t N = symbols->getSymbols().size();
2131 for (i=0; i<N; i++) {
2132 const AaptSymbolEntry& sym = symbols->getSymbols().valueAt(i);
2133 if (sym.typeCode != AaptSymbolEntry::TYPE_INT32) {
2134 continue;
2135 }
2136
2137 if (!assets->isJavaSymbol(sym, includePrivate)) {
2138 continue;
2139 }
2140
2141 String8 name8(sym.name);
2142 fprintf(fp, "int %s %s 0x%08x\n",
2143 className.string(),
2144 flattenSymbol(name8).string(), (int)sym.int32Val);
2145 }
2146
2147 N = symbols->getNestedSymbols().size();
2148 for (i=0; i<N; i++) {
2149 sp<AaptSymbols> nsymbols = symbols->getNestedSymbols().valueAt(i);
2150 String8 nclassName(symbols->getNestedSymbols().keyAt(i));
2151 if (nclassName == "styleable") {
2152 err = writeTextLayoutClasses(fp, assets, nsymbols, includePrivate);
2153 } else {
2154 err = writeTextSymbolClass(fp, assets, includePrivate, nsymbols, nclassName);
2155 }
2156 if (err != NO_ERROR) {
2157 return err;
2158 }
2159 }
2160
2161 return NO_ERROR;
2162}
2163
2164status_t writeResourceSymbols(Bundle* bundle, const sp<AaptAssets>& assets,
2165 const String8& package, bool includePrivate)

Callers 1

writeResourceSymbolsFunction · 0.85

Calls 7

flattenSymbolFunction · 0.85
writeTextLayoutClassesFunction · 0.85
isJavaSymbolMethod · 0.80
stringMethod · 0.80
sizeMethod · 0.65
valueAtMethod · 0.45
keyAtMethod · 0.45

Tested by

no test coverage detected