From c0be6104ec53925be5a3399848cf96bc07861f2d Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 11:14:02 +0300 Subject: [PATCH 1/8] Count the compiler warnings in a ParparVM native build, by owner A ParparVM build compiles four different kinds of C into one binary -- the translator's output, the ParparVM runtime, the hand-written port natives, and vendored third-party sources -- and their warnings arrive in one log with nothing to tell them apart. At that volume a real defect is invisible: an Apple API that is deprecated now and deleted in two releases, or a pointer/integer confusion in generated code, reads the same as the noise around it. Nothing in this tree has ever counted them, and the Android port has already shown what that costs (API 37 deleted FingerprintManager with every check green). Ownership cannot be recovered from the path. ByteCodeTranslator.execute() copies every non-class file into the same flat srcRoot as the generated code, so CN1Vision.m and com_codename1_ui_Form.m are indistinguishable siblings, and bytecode-translator-files.txt is a plain find over that directory. So the translator records provenance at each copy site into cn1-source-manifest.txt. It goes in the project root rather than srcRoot deliberately: getFileType() has no case for .txt, so anything left in srcRoot falls through to ***RESOURCES*** and is copied inside the shipped .app. check-native-warnings.py reads that manifest plus a build log and attributes every diagnostic to generated / runtime / port / vendored / sdk / toolchain, holding the result against a per-leg baseline in the manner of check-cast-semantics.sh. No baseline is committed yet -- one has to be frozen from a real CI leg, not from a local run. Three guards, because a gate that reads nothing reports success: - The build must have compiled everything the manifest lists. An incremental build recompiles nothing, reports no warnings, and is indistinguishable from a clean codebase; so is the documented ARCHS failure where xcodebuild "silently compiles NOTHING while still copying resources". - --probe injects one synthetic warning and asserts the whole chain reacts, on the real log with the real manifest, so a gate that has gone blind fails the day it breaks rather than the day someone notices it never fired. - --self-test checks the parser against a hand-authored fixture and the baselines against their own format. Both run in pr.yml and need no compiler. The census runs on scripts-ios.yml's build-ios leg because that is the one that can: it sets no CN1_IOS_DERIVED_DATA, so it wipes derived data and compiles cold, and its path filters are a superset of the other iOS legs'. It is gated on CN1_WARNING_CENSUS, which our workflows set and nothing a customer runs does, and it is report-only for now. Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/pr.yml | 10 + .github/workflows/scripts-ios.yml | 13 + scripts/build-ios-app.sh | 15 + scripts/check-native-warnings.py | 613 ++++++++++++++++++ scripts/check-native-warnings.sh | 35 + scripts/native-warnings/parser-fixture.log | 53 ++ scripts/run-ios-ui-tests.sh | 39 ++ .../tools/translator/ByteCodeTranslator.java | 163 +++-- .../codename1/tools/translator/Parser.java | 13 + .../tools/translator/SourceManifest.java | 243 +++++++ .../CleanTargetIntegrationTest.java | 116 ++++ 11 files changed, 1261 insertions(+), 52 deletions(-) create mode 100755 scripts/check-native-warnings.py create mode 100755 scripts/check-native-warnings.sh create mode 100644 scripts/native-warnings/parser-fixture.log create mode 100644 vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 19a72c7fb6e..931ab2e807c 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -546,6 +546,16 @@ jobs: mvn -B -q -f maven/pom.xml -pl windows,linux -am -DskipTests \ -Dcn1.binaries="${CN1_BINARIES}" compile scripts/check-native-signatures.sh --require-all + # The native warning gate itself runs on the macOS/Windows/Linux legs that + # actually compile C; what runs HERE is its parser, against a hand-authored + # fixture, plus a structural check on the checked-in baselines. Both need no + # compiler, and both cover the ways this gate goes wrong silently: a parser + # that stops recognising a diagnostic reports zero warnings, which is + # indistinguishable from a clean build, and a baseline edited into a shape + # that no longer matches masks nothing while looking like it does. + - name: Check native warning parser and baselines + if: ${{ matrix.java-version == 8 }} + run: scripts/check-native-warnings.sh --self-test - name: Run JavaScript Port smoke integration if: ${{ matrix.java-version == 8 }} working-directory: vm diff --git a/.github/workflows/scripts-ios.yml b/.github/workflows/scripts-ios.yml index a8a0a6c15af..cd2201f7ed2 100644 --- a/.github/workflows/scripts-ios.yml +++ b/.github/workflows/scripts-ios.yml @@ -249,6 +249,18 @@ jobs: CN1SS_FAIL_ON_MISMATCH: '1' CN1SS_ALLOWED_MISSING: '0' CN1SS_PORT_ID: ios-gl + # Count this build's compiler warnings and attribute each to whoever owns + # the code. This leg is the one that can: it sets no CN1_IOS_DERIVED_DATA, + # so run-ios-ui-tests.sh wipes its derived data and compiles every + # translation unit from cold -- an incremental build reports no warnings + # and is indistinguishable from a clean codebase. Its path filters are + # also a superset of the other iOS legs', so a PR touching only + # CodenameOne/src is still covered. + CN1_WARNING_CENSUS: '1' + CN1_WARNING_LEG: ios-sim-debug + # build-ios-app.sh stages the manifest under the default artifacts dir, + # which is not the per-step one above. + CN1_WARNING_MANIFEST: ${{ github.workspace }}/artifacts/cn1-source-manifest.txt run: | set -euo pipefail mkdir -p "${ARTIFACTS_DIR}" @@ -285,6 +297,7 @@ jobs: artifacts/*-stats.txt artifacts/vm_time.txt artifacts/xcodebuild-list.txt + artifacts/cn1-source-manifest.txt if-no-files-found: warn retention-days: 14 diff --git a/scripts/build-ios-app.sh b/scripts/build-ios-app.sh index dbacf30e353..8607fed8bb9 100755 --- a/scripts/build-ios-app.sh +++ b/scripts/build-ios-app.sh @@ -179,6 +179,21 @@ stage_bytecode_translator_sources() { find "$out_dir" -maxdepth 2 -type f \( -name '*.m' -o -name '*.c' -o -name '*.h' \) \ | sort > "$listing_file" || true + # The translator's record of where each of those files came from. The listing + # above cannot answer that -- generated code, the ParparVM runtime, the port + # natives and vendored third-party sources are all siblings in one flat + # directory -- and without it a warning in the build log has no owner. It sits + # one level up from the sources, in the project root, because anything left in + # the source directory is swept into the Xcode project's resources phase and + # shipped inside the .app. + local manifest_src="$(dirname "$bt_dir")/cn1-source-manifest.txt" + if [ -f "$manifest_src" ]; then + cp "$manifest_src" "$artifacts_dir/cn1-source-manifest.txt" + bia_log "Staged source manifest from $manifest_src" + else + bia_log "No source manifest at $manifest_src; the warning census cannot attribute this build" + fi + ( cd "$artifacts_dir" zip -qry "$(basename "$zip_file")" "$(basename "$out_dir")" diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py new file mode 100755 index 00000000000..d7806d208d2 --- /dev/null +++ b/scripts/check-native-warnings.py @@ -0,0 +1,613 @@ +#!/usr/bin/env python3 +"""Classifies the compiler warnings in a native build log by who owns the code. + +A ParparVM build compiles four completely different kinds of C into one binary: +the code the translator generated, the ParparVM runtime, the hand-written port +natives, and vendored third-party sources. Their warnings all land in one log, +undifferentiated, and the volume is such that a real defect -- an Apple API that +is deprecated today and deleted in two releases, a pointer/integer confusion in +generated code -- is invisible. Nothing in this tree has ever counted them. + +This tool splits a build log by ownership so each group can be driven to zero and +held there. Ownership comes from the manifest the translator writes +(cn1-source-manifest.txt); it cannot be derived from the path, because every one +of those four kinds ends up in the same flat directory. + +Held against a per-leg baseline, ratchet-style, in the manner of +scripts/check-cast-semantics.sh: the baseline records what was true the day the +gate went in, new entries are a failure, and an entry that stops reproducing must +be deleted rather than left to rot. + +Exit codes: + 0 no findings outside the baseline + 1 new findings, or stale baseline entries, or a diagnostic that could not be + attributed to any known origin + 2 the build this log came from did not compile everything the manifest lists, + so the census would undercount and must not be trusted +""" +import argparse +import json +import os +import re +import sys + +ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) +BASELINE_DIR = os.path.join(ROOT, "scripts", "native-warnings") + +# --- Diagnostic grammars ---------------------------------------------------- +# +# Anchored at start of line so that source-snippet lines (" 1 | int x;") and +# caret lines (" | ^") never match: both begin with whitespace, and neither +# carries a ": warning: " at column zero. The clang-cl grammar is separate only +# because MSVC puts the location in parentheses; it still carries [-Wflag], +# because clang-cl is clang. +GNU_RE = re.compile( + r'^(?P[^\s][^:]*(?::[^:\s][^:]*)*?):(?P\d+):(?P\d+):\s+' + r'(?Pwarning|error|note):\s+(?P.*)$') +MSVC_RE = re.compile( + r'^(?P[A-Za-z]?[^\s(][^(]*)\((?P\d+)(?:,(?P\d+))?\):\s+' + r'(?Pwarning|error|note):\s+(?P.*)$') +BARE_RE = re.compile( + r'^(?:(?Pld|clang|clang\+\+|clang-cl|cc|gcc|ninja|xcodebuild|libtool)' + r':\s+)?(?Pwarning|error):\s+(?P.*)$') + +FLAG_RE = re.compile(r'\[(-W[^\]]+)\]\s*$') + +# Xcode names the source it is about to compile; ninja and make announce the +# object. Either way this is how we learn what the build ACTUALLY compiled, as +# opposed to what it could have compiled. +COMPILE_XCODE_RE = re.compile(r'^\s*CompileC\s+(?:"[^"]*"|\S+)\s+(?P"[^"]+"|\S+)\s+normal\b') +# CMake's two generators announce the same thing with different progress +# prefixes -- ninja counts jobs ("[7/91]"), make counts percent ("[ 3%]") -- and +# the prefix is absent entirely when progress reporting is off. One optional group +# covers all three; splitting them into separate patterns is how the percent form +# got missed the first time, and a missed compile line reads as "the build +# compiled nothing", which is a hard failure rather than a wrong number. +COMPILE_CMAKE_RE = re.compile( + r'^\s*(?:\[\s*(?:\d+/\d+|\d+%)\s*\]\s*)?' + r'(?:Building|Compiling)\s+\S+\s+object\s+(?P\S+)') + +SOURCE_EXTS = (".m", ".mm", ".c", ".cc", ".cpp", ".cxx", ".metal", ".S", ".s") +HEADER_EXTS = (".h", ".hh", ".hpp") + +# Provenance rules for files the manifest does not name. These are rules about +# WHERE a file lives, not a list of files: a new SDK header or a new pod is +# covered without anyone editing this. +SDK_MARKERS = ( + "/Applications/Xcode", "/Library/Developer/", "/usr/include/", "/usr/lib/clang/", + ".sdk/", "/Toolchains/", "/usr/local/include/", "/MacOSX.platform/", + "/iPhoneOS.platform/", "/iPhoneSimulator.platform/", "/AppleTVOS.platform/", + "/WatchOS.platform/", "/lib/gcc/", "/mingw", "/msvc/", "/Windows Kits/", +) +VENDORED_MARKERS = ( + "/Pods/", "/SourcePackages/", "/Checkouts/", "/DerivedData/", + "/node_modules/", "/.build/", "/third_party/", "/xwin/", +) + +GATING_GROUPS = ("generated", "runtime", "port", "toolchain") +ALL_GROUPS = GATING_GROUPS + ("vendored", "sdk") + +# Port source directories per leg. Used only to turn a bare file name from the +# manifest back into a repo-relative path, so the baseline can name the file a +# human has to open. +LEG_PORT_DIRS = { + "ios-sim-debug": ["Ports/iOSPort/nativeSources"], + "ios-device-release": ["Ports/iOSPort/nativeSources"], + "macos": ["Ports/MacPort", "Ports/iOSPort/nativeSources"], + "windows-clang-cl": ["Ports/WindowsPort"], + "linux-cc": ["Ports/LinuxPort"], + "clean-target": [], +} + + +def signature(msg): + """Collapses a diagnostic message to its shape. + + 'unused variable locals_3_' and 'unused variable locals_17_' are one defect in + one emitter, not two findings, so the identifiers and numbers that differ + between instances are replaced by '?'. Without this the baseline would churn on + every commit that renumbered a local. + """ + msg = FLAG_RE.sub("", msg).strip() + msg = re.sub(r"'[^']*'", "?", msg) + msg = re.sub(r'"[^"]*"', "?", msg) + msg = re.sub(r'\b\d+(?:\.\d+)*\b', "?", msg) + return re.sub(r"\s+", " ", msg).strip() + + +class Diagnostic(object): + __slots__ = ("path", "line", "col", "flag", "msg", "group", "identity") + + def __init__(self, path, line, col, flag, msg): + # Normalised to forward slashes at construction. The Windows leg emits + # backslash paths and its log is read on whatever host runs the gate, so + # os.path.basename on a POSIX box would otherwise hand back the entire + # path and every Windows warning would be unattributable. + self.path = path.replace("\\", "/") + self.line = line + self.col = col + self.flag = flag + self.msg = msg + self.group = None + self.identity = None + + @property + def dedup_key(self): + # The warning's OWN location, never the translation unit that provoked it. + # A header warning is re-emitted once per including TU and once per + # architecture; those are one defect, and counting them per TU would make + # the number a function of how many files happen to include the header. + return (self.path, self.line, self.col, self.flag, self.msg) + + @property + def key(self): + return "|".join((self.group, self.identity, self.flag, signature(self.msg))) + + +def parse_log(text): + """Every warning in the log, deduplicated, plus the sources that were compiled.""" + seen = {} + order = [] + compiled = set() + for raw in text.splitlines(): + line = raw.rstrip("\r") + + m = COMPILE_XCODE_RE.match(line) + if m: + compiled.add(os.path.basename(m.group("src").strip('"'))) + else: + m = COMPILE_CMAKE_RE.match(line) + if m: + obj = os.path.basename(m.group("obj")) + # CMake names objects .o / .obj, so the source name + # is recoverable; anything else is left alone and simply will not + # match, which shows up as an incomplete build rather than silently + # passing. + for suffix in (".o", ".obj"): + if obj.endswith(suffix): + obj = obj[: -len(suffix)] + break + compiled.add(obj) + + m = GNU_RE.match(line) or MSVC_RE.match(line) + if m: + if m.group("sev") != "warning": + continue + msg = m.group("msg") + flag_m = FLAG_RE.search(msg) + d = Diagnostic(m.group("path"), int(m.group("line")), + int(m.group("col") or 0), + flag_m.group(1) if flag_m else "", msg) + else: + m = BARE_RE.match(line) + if not m or m.group("sev") != "warning": + continue + # No file: a linker or driver diagnostic. It still matters -- ThinLTO + # puts real findings here -- but it belongs to no source. + d = Diagnostic("", 0, 0, "", m.group("msg")) + + if d.dedup_key not in seen: + seen[d.dedup_key] = d + order.append(d) + return order, compiled + + +def read_manifest(path): + """{file name: (origin, source)} from the translator's manifest.""" + entries = {} + with open(path, encoding="utf-8") as fh: + for line in fh: + line = line.strip() + if not line or line.startswith("#"): + continue + parts = line.split("|") + if len(parts) != 3: + raise SystemExit("malformed manifest line in %s: %s" % (path, line)) + entries[parts[0]] = (parts[1], parts[2]) + return entries + + +def resolve_port_path(name, leg): + """Repo-relative path of a hand-written native, or None if it is not ours. + + Matched on file name because the origin recorded in the manifest is a staging + path inside whatever built the app, not a path in this checkout. Two matches is + a hard error rather than a guess: picking one would attribute a warning to a + file nobody edited. + """ + matches = [] + for rel in LEG_PORT_DIRS.get(leg, []): + base = os.path.join(ROOT, rel) + if not os.path.isdir(base): + continue + for dirpath, _dirs, files in os.walk(base): + if name in files: + matches.append(os.path.relpath(os.path.join(dirpath, name), ROOT)) + if len(matches) > 1: + raise SystemExit( + "ambiguous port file %r for leg %s: %s\nResolve by scoping LEG_PORT_DIRS; " + "guessing would blame a file nobody edited." % (name, leg, ", ".join(sorted(matches)))) + return matches[0] if matches else None + + +def classify(diags, manifest, leg): + """Assigns every diagnostic an owner. Returns the ones that have no owner.""" + unattributed = [] + for d in diags: + if d.path == "": + d.group, d.identity = "toolchain", "" + continue + name = os.path.basename(d.path) + norm = d.path + entry = manifest.get(name) + if entry: + origin, _source = entry + if origin == "generated": + # Keyed on the emitter, not the file: a generated file exists only + # if its class survived elimination, and under concatenation there + # are no per-class files at all. + d.group, d.identity = "generated", "*" + elif origin in ("runtime", "vendored"): + d.group, d.identity = origin, name + elif origin == "port": + repo_path = resolve_port_path(name, leg) + # A hand-written native we cannot find in this checkout came from a + # cn1lib or the application, not from a port we maintain. + d.group = "port" if repo_path else "vendored" + d.identity = repo_path or name + else: + unattributed.append(d) + continue + if any(marker in norm for marker in SDK_MARKERS): + d.group, d.identity = "sdk", name + elif any(marker in norm for marker in VENDORED_MARKERS): + d.group, d.identity = "vendored", name + else: + unattributed.append(d) + return unattributed + + +def check_completeness(manifest, compiled): + """Sources the manifest lists that this build never compiled. + + An incremental build recompiles nothing and reports no warnings, which reads + exactly like a clean codebase. Comparing sets of sources rather than counts + keeps a multi-architecture or multi-target build from looking incomplete. + """ + expected = {n for n in manifest if n.endswith(SOURCE_EXTS)} + return sorted(expected - set(compiled)), sorted(expected) + + +def baseline_path(leg): + return os.path.join(BASELINE_DIR, "baseline-%s.txt" % leg) + + +def read_baseline(leg): + path = baseline_path(leg) + if not os.path.exists(path): + return set() + keys = set() + with open(path, encoding="utf-8") as fh: + for line in fh: + line = line.strip() + if not line or line.startswith("#"): + continue + keys.add("|".join(line.split("|")[:4])) + return keys + + +def write_baseline(leg, diags, config): + path = baseline_path(leg) + counts = {} + for d in diags: + if d.group in GATING_GROUPS: + counts[d.key] = counts.get(d.key, 0) + 1 + with open(path, "w", encoding="utf-8") as fh: + fh.write("# Compiler warnings in the %s build, as of the day this gate was added.\n" % leg) + fh.write("#\n") + fh.write("# This is a ratchet, not an allow-list: new code must not add entries.\n") + fh.write("# Delete an entry when the warning stops reproducing -- a stale entry is a\n") + fh.write("# failure too, so the file cannot quietly describe a build nobody runs.\n") + fh.write("#\n") + fh.write("# A baseline is only comparable to a census taken from the SAME build. This\n") + fh.write("# one came from:\n") + for line in config.splitlines(): + fh.write("# %s\n" % line) + fh.write("#\n") + fh.write("# Format: ||||\n") + fh.write("#\n") + fh.write("# identity is a repo-relative path for port code, the file name for the\n") + fh.write("# runtime, and '*' for generated code -- there the unit of authorship is the\n") + fh.write("# emitter, not the file.\n") + fh.write("#\n") + fh.write("# A diagnostic cannot be -Wno-'d or -Werror='d on its own. The only\n") + fh.write("# remedies for one are fixing it or a whole-file pragma.\n") + fh.write("#\n") + fh.write("# Regenerate with scripts/check-native-warnings.py --leg %s --write-baseline\n" % leg) + fh.write("\n") + for key in sorted(counts): + fh.write("%s|%d instance(s) when the baseline was written; not yet triaged\n" + % (key, counts[key])) + return len(counts) + + +def summarize(diags, out): + by_group = {} + for d in diags: + by_group.setdefault(d.group, []).append(d) + out.write("## Native warning census\n\n") + out.write("| group | distinct | instances | gating |\n") + out.write("|---|---|---|---|\n") + for g in ALL_GROUPS: + items = by_group.get(g, []) + distinct = len({d.key for d in items}) + out.write("| %s | %d | %d | %s |\n" + % (g, distinct, len(items), "yes" if g in GATING_GROUPS else "no")) + out.write("\n") + for g in ALL_GROUPS: + items = by_group.get(g, []) + if not items: + continue + # Grouped by the BASELINE key, not by (flag, shape): for the runtime and the + # ports the identity is the file, so the same flag in two files is two rows to + # fix and two rows in the baseline. Collapsing them here would make this table + # disagree with the "distinct" count above and understate the work. + counts = {} + files = {} + for d in items: + counts[d.key] = counts.get(d.key, 0) + 1 + files.setdefault(d.key, set()).add(os.path.basename(d.path)) + out.write("### %s\n\n" % g) + out.write("Sorted by instance count: the top row is the single highest-leverage fix.\n\n") + out.write("| instances | identity | flag | shape | seen in |\n") + out.write("|---|---|---|---|---|\n") + for key, n in sorted(counts.items(), key=lambda kv: (-kv[1], kv[0])): + _group, identity, flag, sig = key.split("|", 3) + names = sorted(files[key]) + shown = ", ".join(names[:3]) + (" (+%d more)" % (len(names) - 3) if len(names) > 3 else "") + out.write("| %d | %s | %s | %s | %s |\n" % (n, identity, flag, sig[:80], shown)) + out.write("\n") + + +PROBE_FLAG = "-Wcn1-gate-probe" +PROBE_MESSAGE = "cn1 warning-gate probe" + + +def probe_target(manifest): + """A runtime file this leg actually has, to hang the probe warning on. + + Not a hard-coded name: the clean target writes the runtime out as + cn1_globals.c where the Apple targets keep cn1_globals.m, so any fixed + spelling is unattributable on some leg -- and an unattributable probe fails + for the wrong reason, which would look like the gate working when it is not. + """ + for name in sorted(manifest): + if manifest[name][0] == "runtime" and name.endswith(SOURCE_EXTS): + return name + raise SystemExit("--probe needs a runtime source in the manifest and found none") + +FIXTURE = os.path.join(BASELINE_DIR, "parser-fixture.log") + + +def self_test(): + """Proves the parser before any baseline exists, and needs no compiler. + + Every branch that has a way to be wrong gets a line: a flagged and an unflagged + diagnostic, the MSVC location format, the same header warning arriving from two + translation units and from two architectures (which must collapse to one), a + linker warning with no file, a note that must be dropped, and the snippet and + caret lines that must not be mistaken for diagnostics. + """ + with open(FIXTURE, encoding="utf-8") as fh: + diags, compiled = parse_log(fh.read()) + got = {(os.path.basename(d.path), d.line, d.col, d.flag, signature(d.msg)) for d in diags} + expected = { + ("IOSNative.m", 4211, 9, "-Wdeprecated-declarations", + "? is deprecated: first deprecated in iOS ?"), + ("cn1_globals.m", 913, 12, "", "implicit declaration of function ?"), + ("CN1Vpn.m", 77, 5, "-Wunused-variable", "unused variable ?"), + ("cn1_globals.h", 2201, 30, "-Wsign-compare", + "comparison of integer expressions of different signedness"), + ("", 0, 0, "", + "object file was built for newer iOS version than being linked"), + ("com_codename1_ui_Form.m", 1502, 17, "-Wunused-variable", "unused variable ?"), + } + problems = [] + for extra in sorted(got - expected): + problems.append("parsed a line it should not have: %r" % (extra,)) + for missing in sorted(expected - got): + problems.append("failed to parse: %r" % (missing,)) + # The header diagnostic appears three times in the fixture -- twice from + # different TUs, once from a second architecture -- and must survive as one. + header = [d for d in diags if os.path.basename(d.path) == "cn1_globals.h"] + if len(header) != 1: + problems.append("header warning deduped to %d entries, expected 1" % len(header)) + if not {"IOSNative.m", "cn1_globals.c", "cn1_virtual_thread.c"} <= compiled: + problems.append("did not recognise the compile lines: %s" % sorted(compiled)) + if problems: + for p in problems: + print("self-test: %s" % p, file=sys.stderr) + return 1 + print("self-test: %d diagnostics parsed, %d sources seen compiled -- OK" + % (len(diags), len(compiled))) + return 0 + + +def check_baselines(): + """Structural check on every checked-in baseline, needing no compiler. + + A baseline is the only record of what was true when the gate went in, and it is + edited by hand as warnings get fixed. These are the ways an edit goes wrong + without anyone noticing: a dropped field, an empty note (an entry nobody + justified), a group that never gates (so the row masks nothing and only + misleads), or a typo in the group name that silently stops matching. + """ + problems = [] + if not os.path.isdir(BASELINE_DIR): + return 0 + for fn in sorted(os.listdir(BASELINE_DIR)): + if not fn.startswith("baseline-") or not fn.endswith(".txt"): + continue + path = os.path.join(BASELINE_DIR, fn) + with open(path, encoding="utf-8") as fh: + for n, line in enumerate(fh, 1): + line = line.rstrip("\n") + if not line.strip() or line.startswith("#"): + continue + parts = line.split("|") + where = "%s:%d" % (fn, n) + if len(parts) != 5: + problems.append("%s: expected 5 |-separated fields, got %d: %s" + % (where, len(parts), line)) + continue + group, identity, flag, _sig, note = parts + if group not in ALL_GROUPS: + problems.append("%s: unknown group %r (one of %s)" + % (where, group, ", ".join(ALL_GROUPS))) + if group not in GATING_GROUPS: + problems.append("%s: group %r never gates, so this entry masks nothing " + "and only misleads -- delete it" % (where, group)) + if not identity.strip(): + problems.append("%s: empty identity" % where) + if not flag.startswith("-W") and flag != "": + problems.append("%s: %r is not a warning flag" % (where, flag)) + if not note.strip(): + problems.append("%s: empty note -- every baselined warning needs a " + "reason someone can read" % where) + if problems: + for p in problems: + print("baseline-check: %s" % p, file=sys.stderr) + return 1 + print("baseline-check: every checked-in baseline is well formed") + return 0 + + +def main(): + ap = argparse.ArgumentParser(description=__doc__, + formatter_class=argparse.RawDescriptionHelpFormatter) + ap.add_argument("--leg", help="which build this log came from, e.g. ios-sim-debug") + ap.add_argument("--log", help="the build log to read") + ap.add_argument("--manifest", help="cn1-source-manifest.txt from the same build") + ap.add_argument("--write-baseline", action="store_true", + help="record the current findings as the new baseline") + ap.add_argument("--report-only", action="store_true", + help="print the census and always exit 0") + ap.add_argument("--allow-partial", action="store_true", + help="do not require the build to have compiled everything (never in CI)") + ap.add_argument("--json", help="write every diagnostic to this file") + ap.add_argument("--self-test", action="store_true", help="check the parser against its fixture") + ap.add_argument("--check-baselines", action="store_true", + help="structural check on the checked-in baselines; needs no compiler") + ap.add_argument("--probe", action="store_true", + help="inject one synthetic warning and assert the gate reacts to it") + args = ap.parse_args() + + if args.self_test: + return self_test() or check_baselines() + if args.check_baselines: + return check_baselines() + + for required in ("leg", "log", "manifest"): + if not getattr(args, required): + ap.error("--%s is required" % required) + + with open(args.log, encoding="utf-8", errors="replace") as fh: + text = fh.read() + manifest = read_manifest(args.manifest) + probe_key = None + if args.probe: + target = probe_target(manifest) + text += "\n%s:1:1: warning: %s [%s]\n" % (target, PROBE_MESSAGE, PROBE_FLAG) + probe_key = "|".join(("runtime", target, PROBE_FLAG, PROBE_MESSAGE)) + + diags, compiled = parse_log(text) + + missing, expected = check_completeness(manifest, compiled) + if not args.allow_partial: + if not compiled: + print("FAIL: this log records no compilation at all, so an empty warning list " + "means nothing. A build that compiles nothing while still copying " + "resources looks exactly like this.", file=sys.stderr) + return 2 + if missing: + print("FAIL: %d of %d sources were not compiled by this build, so the census " + "would undercount. Re-run against a clean build.\n %s%s" + % (len(missing), len(expected), "\n ".join(missing[:40]), + "\n ..." if len(missing) > 40 else ""), file=sys.stderr) + return 2 + + unattributed = classify(diags, manifest, args.leg) + if unattributed: + print("FAIL: %d diagnostics could not be attributed to any known origin. Every " + "warning has an owner; add the provenance rule rather than dropping " + "these.\n %s" % (len(unattributed), + "\n ".join(sorted({d.path for d in unattributed})[:20])), + file=sys.stderr) + return 1 + + if args.json: + with open(args.json, "w", encoding="utf-8") as fh: + json.dump([{"path": d.path, "line": d.line, "col": d.col, "flag": d.flag, + "message": d.msg, "group": d.group, "identity": d.identity, + "key": d.key} for d in diags], fh, indent=1, sort_keys=True) + + summarize(diags, sys.stdout) + step_summary = os.environ.get("GITHUB_STEP_SUMMARY") + if step_summary: + with open(step_summary, "a", encoding="utf-8") as fh: + summarize(diags, fh) + + if args.write_baseline: + n = write_baseline(args.leg, diags, "leg: %s\nlog: %s" % (args.leg, os.path.basename(args.log))) + print("wrote %d baseline entries to %s" % (n, baseline_path(args.leg))) + return 0 + + gating = [d for d in diags if d.group in GATING_GROUPS] + baseline = read_baseline(args.leg) + seen_keys = {d.key for d in gating} + new = sorted(seen_keys - baseline) + stale = sorted(baseline - seen_keys) + + if args.probe: + # The probe asserts the whole chain reacted -- parse, classify, key, diff -- + # on the real log with the real manifest. A gate that has gone blind (missing + # manifest, wrong baseline path, everything silently bucketed as vendored) + # fails here on the day it breaks rather than the day someone notices it + # never fired. + if probe_key not in seen_keys: + print("FAIL: the injected probe warning did not come back as %r. The gate is " + "not classifying warnings correctly and is not gating." % probe_key, + file=sys.stderr) + return 1 + if probe_key not in new: + print("FAIL: the injected probe warning was not reported as new. The gate " + "would not fail on a newly introduced warning.", file=sys.stderr) + return 1 + print("probe: the gate reacted to an injected warning as expected") + return 0 + + if args.report_only: + print("\nreport-only: %d new, %d stale (not failing)" % (len(new), len(stale))) + return 0 + + status = 0 + if new: + print("\nFAIL: %d warning kind(s) are not in the baseline for %s:" % (len(new), args.leg), + file=sys.stderr) + for k in new: + print(" %s" % k, file=sys.stderr) + status = 1 + if stale: + print("\nFAIL: %d baseline entr(ies) for %s no longer reproduce. Delete them:" + % (len(stale), args.leg), file=sys.stderr) + for k in stale: + print(" %s" % k, file=sys.stderr) + status = 1 + if not status: + print("\nOK: %d gating diagnostic(s), all baselined (%d entries)." + % (len(gating), len(baseline))) + return status + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/scripts/check-native-warnings.sh b/scripts/check-native-warnings.sh new file mode 100755 index 00000000000..d75ca526ff5 --- /dev/null +++ b/scripts/check-native-warnings.sh @@ -0,0 +1,35 @@ +#!/usr/bin/env bash +# +# Classifies the compiler warnings in a native build log by who owns the code. +# +# A ParparVM build compiles four different kinds of C into one binary -- the +# translator's output, the ParparVM runtime, the hand-written port natives, and +# vendored third-party sources -- and their warnings arrive in one log with +# nothing to tell them apart. At that volume a real defect (an Apple API that is +# deprecated now and deleted in two releases, a pointer/integer confusion in +# generated code) is invisible. Ownership cannot be recovered from the path, +# because all four end up in the same flat directory; it comes from the manifest +# the translator writes beside the generated project. +# +# The parser self-test needs no compiler and is what PR CI runs: +# +# scripts/check-native-warnings.sh --self-test +# +# A census needs a log and the manifest from the SAME build: +# +# scripts/check-native-warnings.sh --leg ios-sim-debug \ +# --log artifacts/xcodebuild-build.log \ +# --manifest artifacts/cn1-source-manifest.txt +# +# Add --report-only to print the census without gating, --write-baseline to +# record the current findings, and --probe to assert the gate still reacts to an +# injected warning. +# +# Exit 2 means the build did not compile everything the manifest lists, so the +# census would undercount -- an incremental build reports no warnings and reads +# exactly like a clean codebase. Re-run against a cold build rather than +# believing the number. +set -euo pipefail + +SCRIPT_DIR="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)" +exec python3 "$SCRIPT_DIR/check-native-warnings.py" "$@" diff --git a/scripts/native-warnings/parser-fixture.log b/scripts/native-warnings/parser-fixture.log new file mode 100644 index 00000000000..a2f4cf5f0f2 --- /dev/null +++ b/scripts/native-warnings/parser-fixture.log @@ -0,0 +1,53 @@ +# Hand-authored input for scripts/check-native-warnings.py --self-test. +# +# One line for every branch of the parser that has a way to be wrong. Do not +# regenerate this from a real build: the point is that each line is here because +# somebody reasoned about it, and a real log would not reliably contain all of +# them at once. +# +# Not a real log format -- comments are simply lines the grammars do not match, +# which is itself worth asserting. + +CompileC /tmp/dd/Objects-normal/arm64/IOSNative.o /tmp/proj/HelloApp-src/IOSNative.m normal arm64 objective-c com.apple.compilers.llvm.clang.1_0.compiler +[1/9] Building C object CMakeFiles/HelloApp.dir/HelloApp-src/cn1_globals.c.o +# The SAME announcement from CMake's other generator. Make counts percent where +# ninja counts jobs; missing this form made a complete build look like one that +# compiled nothing, which the completeness guard reports as a hard failure. +[ 42%] Building C object CMakeFiles/HelloApp.dir/HelloApp-src/cn1_virtual_thread.c.o + +# 1. GNU format, flagged. The most common shape. +/tmp/proj/HelloApp-src/IOSNative.m:4211:9: warning: 'keyWindow' is deprecated: first deprecated in iOS 13.0 [-Wdeprecated-declarations] + +# 2. GNU format, NO flag. Cannot be -Wno-'d individually; must parse anyway. +/tmp/proj/HelloApp-src/cn1_globals.m:913:12: warning: implicit declaration of function 'cn1_missing_helper' + +# 3. MSVC/clang-cl location format. Still carries the clang flag. +C:\build\proj\HelloApp-src\CN1Vpn.m(77,5): warning: unused variable 'unusedLocal' [-Wunused-variable] + +# 4-6. The SAME header warning, from two translation units and then from a +# second architecture. Must dedupe to exactly one: it is one defect, and +# counting it per TU would make the number depend on how many files include it. +In file included from /tmp/proj/HelloApp-src/com_codename1_ui_Form.m:3: +/tmp/proj/HelloApp-src/cn1_globals.h:2201:30: warning: comparison of integer expressions of different signedness [-Wsign-compare] +In file included from /tmp/proj/HelloApp-src/com_codename1_ui_Label.m:3: +/tmp/proj/HelloApp-src/cn1_globals.h:2201:30: warning: comparison of integer expressions of different signedness [-Wsign-compare] +/tmp/proj/HelloApp-src/cn1_globals.h:2201:30: warning: comparison of integer expressions of different signedness [-Wsign-compare] + +# 7. A linker diagnostic with no source file at all. ThinLTO puts real findings +# here, so it has to be captured even though it belongs to no file. +ld: warning: object file was built for newer iOS version than being linked + +# 8. A note. Must be DROPPED, not attached to the warning above it: xcodebuild +# interleaves parallel target output, so a note is not reliably adjacent to the +# diagnostic it belongs to. +/tmp/proj/HelloApp-src/cn1_globals.h:2199:1: note: expanded from macro 'CN1_COMPARE' + +# 9. Two generated-code warnings whose only difference is the local's number. +# These must collapse to ONE baseline row: one emitter, one fix. +/tmp/proj/HelloApp-src/com_codename1_ui_Form.m:1502:17: warning: unused variable 'locals_3_' [-Wunused-variable] +/tmp/proj/HelloApp-src/com_codename1_ui_Form.m:1502:17: warning: unused variable 'locals_17_' [-Wunused-variable] + +# 10. A source snippet and its caret. Both start with whitespace and neither is +# a diagnostic; if either matched, every warning would be counted twice. + 1502 | JAVA_OBJECT locals_3_; + | ^ diff --git a/scripts/run-ios-ui-tests.sh b/scripts/run-ios-ui-tests.sh index 1e6e2dcfef5..a3a17013657 100755 --- a/scripts/run-ios-ui-tests.sh +++ b/scripts/run-ios-ui-tests.sh @@ -702,6 +702,27 @@ fi CN1_TEST_OPT_LEVEL="${CN1_TEST_OPT_LEVEL:-2}" XCODE_BUILD_CMD+=("GCC_OPTIMIZATION_LEVEL=$CN1_TEST_OPT_LEVEL") ri_log "Building translated C at -O$CN1_TEST_OPT_LEVEL (GCC_OPTIMIZATION_LEVEL)" +# Warning census (CN1_WARNING_CENSUS=1, set by our workflows and by nothing a +# customer runs). The five settings below are OFF in the Xcode template, which +# quietens the translator's output at the cost of also blinding the ~85k lines of +# hand-written port natives compiled alongside it. Turning them back on for the +# census measures what restoring each would cost before any of them is changed in +# the template. +# +# These must be command-line overrides rather than an xcconfig: Xcode's precedence +# is command line > target > project > xcconfig, so an xcconfig saying YES loses to +# the project-level NO and would measure nothing at all -- a gate that reads +# nothing and reports success. +if [ "${CN1_WARNING_CENSUS:-0}" = "1" ]; then + ri_log "Warning census: re-enabling the warnings the template disables" + XCODE_BUILD_CMD+=( + "CLANG_WARN_EMPTY_BODY=YES" + "CLANG_WARN_ENUM_CONVERSION=YES" + "CLANG_WARN_INT_CONVERSION=YES" + "CLANG_WARN__DUPLICATE_METHOD_MATCH=YES" + "GCC_WARN_UNUSED_VARIABLE=YES" + ) +fi XCODE_BUILD_CMD+=(build) if ! "${XCODE_BUILD_CMD[@]}" | tee "$BUILD_LOG"; then # CI runners occasionally lose the booted device between simctl boot and the @@ -738,6 +759,24 @@ COMPILE_END=$(date +%s) COMPILATION_TIME=$((COMPILE_END - COMPILE_START)) ri_log "Compilation time: ${COMPILATION_TIME}s" +# Attribute this build's warnings to whoever owns the code. Report-only for now: +# the census has to produce the first honest numbers before any baseline can be +# frozen from them. The tool exits 2 by itself if this build did not compile +# everything, so an incremental build cannot quietly report a small number. +if [ "${CN1_WARNING_CENSUS:-0}" = "1" ]; then + CN1_WARNING_MANIFEST="${CN1_WARNING_MANIFEST:-$ARTIFACTS_DIR/cn1-source-manifest.txt}" + if [ -f "$CN1_WARNING_MANIFEST" ]; then + "$REPO_ROOT/scripts/check-native-warnings.sh" \ + --leg "${CN1_WARNING_LEG:-ios-sim-debug}" \ + --log "$BUILD_LOG" \ + --manifest "$CN1_WARNING_MANIFEST" \ + --json "$ARTIFACTS_DIR/native-warnings.json" \ + --report-only || ri_log "STAGE:WARNING_CENSUS_FAILED" + else + ri_log "Warning census requested but no manifest at $CN1_WARNING_MANIFEST" + fi +fi + BUILD_SETTINGS="$("$XCODEBUILD" "$XCODE_CONTAINER_FLAG" "$WORKSPACE_PATH" -scheme "$SCHEME" -sdk iphonesimulator -configuration Debug -showBuildSettings 2>/dev/null || true)" TARGET_BUILD_DIR="$(printf '%s\n' "$BUILD_SETTINGS" | awk -F' = ' '/ TARGET_BUILD_DIR /{print $2; exit}')" WRAPPER_NAME="$(printf '%s\n' "$BUILD_SETTINGS" | awk -F' = ' '/ WRAPPER_NAME /{print $2; exit}')" diff --git a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/ByteCodeTranslator.java b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/ByteCodeTranslator.java index 585249e0c2e..bf5b813b1dc 100644 --- a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/ByteCodeTranslator.java +++ b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/ByteCodeTranslator.java @@ -127,6 +127,14 @@ boolean hasIosDeviceIdioms() { public static OutputType output = OutputType.OUTPUT_TYPE_IOS; public static boolean verbose = true; + + /** + * Provenance of every file that lands in the generated source directory, so a + * consumer of the build log can tell a codegen defect from a port bug from + * somebody else's vendored code. Written out beside the generated project at the + * end of each output handler; see {@link SourceManifest}. + */ + static final SourceManifest sourceManifest = new SourceManifest(); ByteCodeTranslator() { } @@ -172,6 +180,12 @@ void execute(File sourceDir, File outputDir) throws Exception { if(!f.isDirectory() && !isBuildMetadata(f)) { // copy the file to the dest dir copy(Files.newInputStream(f.toPath()), Files.newOutputStream(new File(outputDir, f.getName()).toPath())); + // Everything that reaches here is hand-written: a port native, a + // cn1lib's native, or an application resource. This is the only + // point at which its ORIGIN is still known -- one line further on + // it is an anonymous sibling of the generated code -- so record it + // here or lose the distinction for good. + sourceManifest.recordPort(f.getName(), f); } } } @@ -269,19 +283,69 @@ public static boolean isCheckedCastsEnabled() { /// #### Parameters /// /// - `srcRoot`: the directory the translated sources are written to + /** + * Copies one of the ParparVM runtime sources bundled in the translator's jar into + * the generated project, recording its provenance on the way through. + * + *

Every runtime file goes through here rather than calling {@link #copy} directly, + * so that one cannot be added later without being recorded. A file the manifest does + * not name is indistinguishable from generated code to anything reading the build + * log, which is exactly the confusion {@link SourceManifest} exists to prevent.

+ * + * @param srcRoot the generated project's source directory + * @param name the resource name, which is also the file name it is written under + * @return the file that was written, for callers that go on to edit it + */ + private static File copyRuntimeResource(File srcRoot, String name) throws IOException { + return copyRuntimeResource(srcRoot, name, name); + } + + /** + * As {@link #copyRuntimeResource(File, String)}, for the clean target, which writes + * several of the runtime sources out under a different name than the resource has -- + * {@code cn1_globals.m} becomes {@code cn1_globals.c}, because that target compiles C + * rather than Objective-C. The manifest records the name the file has ON DISK, since + * that is the name a compiler diagnostic will carry. + * + * @param srcRoot the generated project's source directory + * @param name the resource name inside the translator jar + * @param destName the file name to write it under + * @return the file that was written, for callers that go on to edit it + */ + private static File copyRuntimeResource(File srcRoot, String name, String destName) throws IOException { + File dest = new File(srcRoot, destName); + copy(ByteCodeTranslator.class.getResourceAsStream("/" + name), Files.newOutputStream(dest.toPath())); + sourceManifest.recordRuntime(destName, "/" + name); + return dest; + } + + /** + * As {@link #copyRuntimeResource}, for third-party code we bundle but do not + * maintain. Kept separate rather than taking an origin parameter because the two + * differ in what a warning MEANS: a warning in the runtime is ours to fix, and one + * in vendored code is reported and never gated. + * + * @param srcRoot the generated project's source directory + * @param name the resource name, which is also the file name it is written under + * @return the file that was written, for callers that go on to edit it + */ + private static File copyVendoredResource(File srcRoot, String name) throws IOException { + File dest = new File(srcRoot, name); + copy(ByteCodeTranslator.class.getResourceAsStream("/" + name), Files.newOutputStream(dest.toPath())); + sourceManifest.recordVendored(name, "/" + name); + return dest; + } + private static void emitBundledSqlite(File srcRoot) throws IOException { File sqliteUnity = new File(srcRoot, "cn1_sqlite3.c"); File sqliteHeader = new File(srcRoot, "cn1_sqlite3.h"); File sqliteAmalgamation = new File(srcRoot, "cn1_sqlite3_amalgamation.h"); File sqliteCipherMarker = new File(srcRoot, "cn1_sqlite3_cipher.h"); if (isBundledSqliteEnabled()) { - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_sqlite3.c"), - Files.newOutputStream(sqliteUnity.toPath())); + copyVendoredResource(srcRoot, "cn1_sqlite3.c"); replaceInFile(sqliteUnity, "//#define CN1_INCLUDE_SQLITE", "#define CN1_INCLUDE_SQLITE"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_sqlite3.h"), - Files.newOutputStream(sqliteHeader.toPath())); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_sqlite3_amalgamation.h"), - Files.newOutputStream(sqliteAmalgamation.toPath())); + copyVendoredResource(srcRoot, "cn1_sqlite3.h"); + copyVendoredResource(srcRoot, "cn1_sqlite3_amalgamation.h"); } else { deleteIfPresent(sqliteUnity); deleteIfPresent(sqliteHeader); @@ -293,8 +357,7 @@ private static void emitBundledSqlite(File srcRoot) throws IOException { // __has_include is the only thing they can agree on without per-target compiler // flags. Emitted only for an application that configures encryption, so everyone else // compiles the engine as plain SQLite and links no keying code at all. - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_sqlite3_cipher.h"), - Files.newOutputStream(sqliteCipherMarker.toPath())); + copyVendoredResource(srcRoot, "cn1_sqlite3_cipher.h"); } else { // Left behind, this would put the ciphers back into an engine emitted without them -- // __has_include does not care which run wrote the file. @@ -435,10 +498,8 @@ private static void handleCleanOutput(ByteCodeTranslator b, File[] sources, File b.execute(sources, srcRoot); - File cn1Globals = new File(srcRoot, "cn1_globals.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_globals.h"), Files.newOutputStream(cn1Globals.toPath())); - File cn1Intrinsics = new File(srcRoot, "cn1_intrinsics.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_intrinsics.h"), Files.newOutputStream(cn1Intrinsics.toPath())); + File cn1Globals = copyRuntimeResource(srcRoot, "cn1_globals.h"); + copyRuntimeResource(srcRoot, "cn1_intrinsics.h"); // Virtual threads: the switch is a few instructions of assembly per // architecture, so the .S travels with the runtime rather than being // generated. A project that gets the C and not the .S links against a @@ -450,17 +511,12 @@ private static void handleCleanOutput(ByteCodeTranslator b, File[] sources, File if ("true".equalsIgnoreCase(System.getProperty("cn1.onDeviceDebug", "false"))) { replaceInFile(cn1Globals, "//#define CN1_ON_DEVICE_DEBUG", "#define CN1_ON_DEVICE_DEBUG"); } - File cn1GlobalsC = new File(srcRoot, "cn1_globals.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_globals.m"), Files.newOutputStream(cn1GlobalsC.toPath())); - File nativeMethodsC = new File(srcRoot, "nativeMethods.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/nativeMethods.m"), Files.newOutputStream(nativeMethodsC.toPath())); + copyRuntimeResource(srcRoot, "cn1_globals.m", "cn1_globals.c"); + copyRuntimeResource(srcRoot, "nativeMethods.m", "nativeMethods.c"); if (System.getProperty("USE_RPMALLOC", "false").equals("true")) { - File malloc = new File(srcRoot, "malloc.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/malloc.c"), Files.newOutputStream(malloc.toPath())); - File rpmalloc = new File(srcRoot, "rpmalloc.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/rpmalloc.c"), Files.newOutputStream(rpmalloc.toPath())); - File rpmalloch = new File(srcRoot, "rpmalloc.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/rpmalloc.h"), Files.newOutputStream(rpmalloch.toPath())); + copyRuntimeResource(srcRoot, "malloc.c"); + copyRuntimeResource(srcRoot, "rpmalloc.c"); + copyRuntimeResource(srcRoot, "rpmalloc.h"); } // The bundled SQLite engine is emitted only for applications that actually use // com.codename1.db, so everyone else pays nothing for it. cn1_sqlite3.c is gated on @@ -469,26 +525,21 @@ private static void handleCleanOutput(ByteCodeTranslator b, File[] sources, File // Always emitted: it defines the native entry points either way, as real bindings when // the engine is present and as stubs when it is not, so an application that references // com.codename1.db links regardless of how the translator was invoked. - File sqliteBindings = new File(srcRoot, "cn1_db_sqlite_impl.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_db_sqlite_impl.h"), Files.newOutputStream(sqliteBindings.toPath())); + copyRuntimeResource(srcRoot, "cn1_db_sqlite_impl.h"); emitBundledSqlite(srcRoot); - File xmlvm = new File(srcRoot, "xmlvm.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/xmlvm.h"), Files.newOutputStream(xmlvm.toPath())); + copyRuntimeResource(srcRoot, "xmlvm.h"); // Win32 POSIX compatibility shim. Always emitted; both files are gated on // _WIN32 internally, so they compile to nothing on iOS/macOS/Linux and // provide pthreads/usleep/gettimeofday on Windows (clang-cl / MSVC ABI). - File cn1WinCompatH = new File(srcRoot, "cn1_win_compat.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_win_compat.h"), Files.newOutputStream(cn1WinCompatH.toPath())); - File cn1WinCompatC = new File(srcRoot, "cn1_win_compat.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_win_compat.c"), Files.newOutputStream(cn1WinCompatC.toPath())); + copyRuntimeResource(srcRoot, "cn1_win_compat.h"); + copyRuntimeResource(srcRoot, "cn1_win_compat.c"); Parser.writeOutput(srcRoot); File javaIoFileHeader = new File(srcRoot, "java_io_File.h"); if (javaIoFileHeader.exists()) { - File javaIoFileC = new File(srcRoot, "java_io_File_runtime.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/java_io_File.m"), Files.newOutputStream(javaIoFileC.toPath())); + copyRuntimeResource(srcRoot, "java_io_File.m", "java_io_File_runtime.c"); } File classMethodIndexM = new File(srcRoot, "cn1_class_method_index.m"); @@ -498,6 +549,11 @@ private static void handleCleanOutput(ByteCodeTranslator b, File[] sources, File if(!classMethodIndexM.delete()) { System.err.println("Deletion of " + classMethodIndexM.getAbsolutePath() + " failed"); } + // Parser recorded the .m it wrote; this target compiles C, so the file that + // actually reaches the compiler -- and that a diagnostic will name -- is the + // .c. Re-record under the surviving name and drop the one that no longer + // exists, or the manifest describes a file nothing will ever build. + sourceManifest.renameGenerated("cn1_class_method_index.m", "cn1_class_method_index.c"); } // Native Windows produces a single self-contained .exe (there is no .app @@ -518,6 +574,12 @@ private static void handleCleanOutput(ByteCodeTranslator b, File[] sources, File } writeCmakeProject(root, srcRoot, appName, appType); + + // Written to the project root rather than srcRoot on purpose: writeCmakeProject + // globs srcRoot for sources, and the Apple path lists it into the Xcode project, + // where an unrecognised extension lands in the resources phase and ships inside + // the bundle. See SourceManifest. + sourceManifest.write(root); } /** @@ -784,10 +846,8 @@ private static void handleAppleOutput(ByteCodeTranslator b, File[] sources, File b.execute(sources, srcRoot); - File cn1Globals = new File(srcRoot, "cn1_globals.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_globals.h"), Files.newOutputStream(cn1Globals.toPath())); - File cn1Intrinsics = new File(srcRoot, "cn1_intrinsics.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_intrinsics.h"), Files.newOutputStream(cn1Intrinsics.toPath())); + File cn1Globals = copyRuntimeResource(srcRoot, "cn1_globals.h"); + copyRuntimeResource(srcRoot, "cn1_intrinsics.h"); // Virtual threads: the switch is a few instructions of assembly per // architecture, so the .S travels with the runtime rather than being // generated. A project that gets the C and not the .S links against a @@ -799,20 +859,14 @@ private static void handleAppleOutput(ByteCodeTranslator b, File[] sources, File if ("true".equalsIgnoreCase(System.getProperty("cn1.onDeviceDebug", "false"))) { replaceInFile(cn1Globals, "//#define CN1_ON_DEVICE_DEBUG", "#define CN1_ON_DEVICE_DEBUG"); } - File cn1GlobalsM = new File(srcRoot, "cn1_globals.m"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_globals.m"), Files.newOutputStream(cn1GlobalsM.toPath())); - File nativeMethods = new File(srcRoot, "nativeMethods.m"); - copy(ByteCodeTranslator.class.getResourceAsStream("/nativeMethods.m"), Files.newOutputStream(nativeMethods.toPath())); - File javaIoFileM = new File(srcRoot, "java_io_File.m"); - copy(ByteCodeTranslator.class.getResourceAsStream("/java_io_File.m"), Files.newOutputStream(javaIoFileM.toPath())); + copyRuntimeResource(srcRoot, "cn1_globals.m"); + copyRuntimeResource(srcRoot, "nativeMethods.m"); + copyRuntimeResource(srcRoot, "java_io_File.m"); if (System.getProperty("USE_RPMALLOC", "false").equals("true")) { - File malloc = new File(srcRoot, "malloc.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/malloc.c"), Files.newOutputStream(malloc.toPath())); - File rpmalloc = new File(srcRoot, "rpmalloc.c"); - copy(ByteCodeTranslator.class.getResourceAsStream("/rpmalloc.c"), Files.newOutputStream(rpmalloc.toPath())); - File rpmalloch = new File(srcRoot, "rpmalloc.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/rpmalloc.h"), Files.newOutputStream(rpmalloch.toPath())); + copyRuntimeResource(srcRoot, "malloc.c"); + copyRuntimeResource(srcRoot, "rpmalloc.c"); + copyRuntimeResource(srcRoot, "rpmalloc.h"); } // The bundled SQLite engine is emitted only for applications that actually use // com.codename1.db, so everyone else pays nothing for it. cn1_sqlite3.c is gated on @@ -821,8 +875,7 @@ private static void handleAppleOutput(ByteCodeTranslator b, File[] sources, File // Always emitted: it defines the native entry points either way, as real bindings when // the engine is present and as stubs when it is not, so an application that references // com.codename1.db links regardless of how the translator was invoked. - File sqliteBindings = new File(srcRoot, "cn1_db_sqlite_impl.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/cn1_db_sqlite_impl.h"), Files.newOutputStream(sqliteBindings.toPath())); + copyRuntimeResource(srcRoot, "cn1_db_sqlite_impl.h"); emitBundledSqlite(srcRoot); Parser.writeOutput(srcRoot); @@ -833,8 +886,7 @@ private static void handleAppleOutput(ByteCodeTranslator b, File[] sources, File File templatePch = new File(srcRoot, appName + "-Prefix.pch"); copy(ByteCodeTranslator.class.getResourceAsStream(templateRoot + "/template/template-Prefix.pch"), Files.newOutputStream(templatePch.toPath())); - File xmlvm = new File(srcRoot, "xmlvm.h"); - copy(ByteCodeTranslator.class.getResourceAsStream("/xmlvm.h"), Files.newOutputStream(xmlvm.toPath())); + copyRuntimeResource(srcRoot, "xmlvm.h"); File projectWorkspaceData = new File(projectXCworkspace, "contents.xcworkspacedata"); copy(ByteCodeTranslator.class.getResourceAsStream(templateRoot + "/template.xcodeproj/project.xcworkspace/contents.xcworkspacedata"), Files.newOutputStream(projectWorkspaceData.toPath())); @@ -1066,6 +1118,12 @@ private static void handleAppleOutput(ByteCodeTranslator b, File[] sources, File String bundleVersion = System.getProperty("bundleVersionNumber", appVersion); replaceInFile(templateInfoPlist, "com.codename1pkg", appPackageName, "${PRODUCT_NAME}", appDisplayName, "VERSION_VALUE", appVersion, "VERSION_BUNDLE_VALUE", bundleVersion); + + // Written to the project root, NOT to srcRoot. srcRoot.list() above feeds the + // Xcode project, and getFileType() has no case for .txt, so a manifest left in + // srcRoot would fall through to ***RESOURCES*** and be copied inside the shipped + // .app. See SourceManifest. + sourceManifest.write(root); } private static void writeCmakeProject(File projectRoot, File srcRoot, String appName, String appType) throws IOException { @@ -1570,6 +1628,7 @@ private static void emitVirtualThreadRuntime(File srcRoot) throws IOException { throw new IOException("virtual-thread runtime resource missing: " + name); } copy(in, Files.newOutputStream(new File(srcRoot, name).toPath())); + sourceManifest.recordRuntime(name, "/" + name); } } diff --git a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/Parser.java b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/Parser.java index d462fe03d28..1d155f7180f 100644 --- a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/Parser.java +++ b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/Parser.java @@ -684,9 +684,11 @@ private static void generateClassAndMethodIndexHeader(File outputDirectory) thro FileOutputStream fos = new FileOutputStream(new File(outputDirectory, "cn1_class_method_index.h")); fos.write(bld.toString().getBytes(StandardCharsets.UTF_8)); fos.close(); + ByteCodeTranslator.sourceManifest.recordGenerated("cn1_class_method_index.h"); fos = new FileOutputStream(new File(outputDirectory, "cn1_class_method_index.m")); fos.write(bldM.toString().getBytes(StandardCharsets.UTF_8)); fos.close(); + ByteCodeTranslator.sourceManifest.recordGenerated("cn1_class_method_index.m"); } private static String encodeString(String con) { @@ -1158,6 +1160,13 @@ private static void writeFile(ByteCodeClass cls, File outputDir, ConcatenatingFi if (outMain instanceof ConcatenatingFileOutputStream) { ((ConcatenatingFileOutputStream)outMain).beginNextFile(cls.getClsName()); + } else { + // Only the one-file-per-class case has a file name worth recording. Under + // concatenation the classes are bucketed into concatenated_ and the + // provenance of an individual class is genuinely gone by the time the + // compiler sees it; the manifest says so by simply not naming these. + ByteCodeTranslator.sourceManifest.recordGenerated( + cls.getClsName() + "." + ByteCodeTranslator.output.extension()); } if (ByteCodeTranslator.output == ByteCodeTranslator.OutputType.OUTPUT_TYPE_JAVASCRIPT) { outMain.write(cls.generateJavascriptCode(classes).getBytes(StandardCharsets.UTF_8)); @@ -1171,6 +1180,10 @@ private static void writeFile(ByteCodeClass cls, File outputDir, ConcatenatingFi try(FileOutputStream outHeader = new FileOutputStream(new File(outputDir, headerName))) { outHeader.write(cls.generateCHeader().getBytes(StandardCharsets.UTF_8)); } + // The header is per-class even when the bodies are concatenated, so it is + // always recordable -- and it is where a good share of the generated-code + // diagnostics land, since every class that depends on this one includes it. + ByteCodeTranslator.sourceManifest.recordGenerated(headerName); } } diff --git a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java new file mode 100644 index 00000000000..97cbdaa03c3 --- /dev/null +++ b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java @@ -0,0 +1,243 @@ +/* + * Copyright (c) 2026, Codename One and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Codename One designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Codename One through http://www.codenameone.com/ if you + * need additional information or have any questions. + */ +package com.codename1.tools.translator; + +import java.io.File; +import java.io.IOException; +import java.io.OutputStreamWriter; +import java.io.Writer; +import java.nio.charset.Charset; +import java.nio.file.Files; +import java.util.ArrayList; +import java.util.Collections; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + * Records where every file in the generated project's source directory came from. + * + *

Why this has to exist. The translator drops four completely different + * kinds of C into one flat directory: the code it generated itself, the ParparVM + * runtime it copied out of its own jar, the hand-written port natives, and vendored + * third-party sources such as the bundled SQLite amalgamation. After + * {@link ByteCodeTranslator#execute} has run they are siblings with nothing to tell + * them apart -- {@code CN1Vision.m} and {@code com_codename1_ui_Form.m} sit in the + * same directory and differ only in who wrote them. A compiler warning in the first + * is ours to fix today; one in the second is a codegen defect; one in the third is + * somebody else's code we cannot touch. Without a record written at copy time that + * distinction is simply gone, and a warning report over the build log can only + * lump them together.

+ * + *

The translator is the only component that ever knows, because it is the thing + * doing the copying, so it writes what it knows to {@value #FILE_NAME} beside the + * generated project.

+ * + *

The file must not live in the source directory it describes. + * {@code handleAppleOutput} lists that directory and puts everything it finds into + * the Xcode project; {@code getFileType} has no case for {@code .txt}, so an entry + * would fall through to the resources build phase and the manifest would be copied + * inside the shipped {@code .app}. It is written to the project root instead -- + * the parent -- which nothing enumerates.

+ * + *

Entries are keyed by file name rather than by path on purpose: the name is what + * survives into the generated project, into the compiler's command line, and into + * the diagnostics in the build log, which is where this data is consumed. Recording + * the same name twice is not an error -- a later copy legitimately overwrites an + * earlier one -- and the last writer wins, matching what the filesystem did.

+ */ +public class SourceManifest { + /** Name of the manifest, written to the generated project's root directory. */ + public static final String FILE_NAME = "cn1-source-manifest.txt"; + + /** + * Who wrote a file. Ordered from "ours and generated" to "not ours at all", + * which is also the order of how much a warning in one of them means. + */ + public enum Origin { + /** + * Emitted by the translator from Java bytecode. A warning here is a defect in + * an emitter, and fixing one emitter fixes every file it wrote. + */ + GENERATED, + + /** + * The ParparVM runtime, copied verbatim out of the translator's own jar + * ({@code cn1_globals.m}, {@code nativeMethods.m} and friends). Hand-written + * and ours. + */ + RUNTIME, + + /** + * A hand-written native from one of the ports, or from a cn1lib. Ours to fix + * when it is a port file; the consumer resolves which by looking the name up + * in the checked-out tree. + */ + PORT, + + /** + * Third-party code we bundle but do not maintain, such as the SQLite + * amalgamation. Reported, never gated. + */ + VENDORED + } + + private static final Charset UTF8 = Charset.forName("UTF-8"); + + /** + * Insertion-ordered so the manifest reads in the order the build produced it, + * which makes a diff between two builds meaningful. + */ + private final Map entries = new LinkedHashMap(); + + /** One recorded file. */ + public static final class Entry { + private final String name; + private final Origin origin; + private final String source; + + Entry(String name, Origin origin, String source) { + this.name = name; + this.origin = origin; + this.source = source; + } + + public String getName() { + return name; + } + + public Origin getOrigin() { + return origin; + } + + /** + * Where the file came from -- an absolute path for a copied file, a + * {@code resource:} URL for one unpacked from the translator jar, or the empty + * string for generated code, which has no prior existence. + */ + public String getSource() { + return source; + } + } + + /** + * Records a file the translator generated. {@code name} is the file name as it + * appears in the project directory. + */ + public void recordGenerated(String name) { + record(name, Origin.GENERATED, ""); + } + + /** Records a runtime file unpacked from the translator's own jar. */ + public void recordRuntime(String name, String resourceName) { + record(name, Origin.RUNTIME, "resource:" + resourceName); + } + + /** Records a vendored third-party file unpacked from the translator's own jar. */ + public void recordVendored(String name, String resourceName) { + record(name, Origin.VENDORED, "resource:" + resourceName); + } + + /** + * Records a hand-written native copied in from the application's or a port's + * source tree. + */ + public void recordPort(String name, File origin) { + record(name, Origin.PORT, origin == null ? "" : origin.getAbsolutePath()); + } + + private void record(String name, Origin origin, String source) { + if (name == null || name.isEmpty()) { + return; + } + entries.put(name, new Entry(name, origin, source)); + } + + /** + * Re-records an entry under a new file name, keeping its origin. + * + *

For the case where a later stage renames a file the translator already wrote -- + * the clean target copies {@code cn1_class_method_index.m} to {@code .c} and deletes + * the original, because it compiles C rather than Objective-C. The manifest has to + * name the file that reaches the compiler, since that is the name a diagnostic will + * carry; leaving the old name behind would describe a file nothing builds and hide + * the one that is built.

+ * + *

Does nothing when {@code fromName} was never recorded, so a caller does not have + * to know whether the rename it is reporting actually happened.

+ * + * @param fromName the name the file was recorded under + * @param toName the name it now has on disk + */ + public void renameGenerated(String fromName, String toName) { + Entry existing = entries.remove(fromName); + if (existing == null) { + return; + } + entries.put(toName, new Entry(toName, existing.origin, existing.source)); + } + + /** Every entry, in the order it was recorded. */ + public List getEntries() { + return Collections.unmodifiableList(new ArrayList(entries.values())); + } + + /** The recorded origin of {@code name}, or null when it was never recorded. */ + public Origin originOf(String name) { + Entry e = entries.get(name); + return e == null ? null : e.origin; + } + + public int size() { + return entries.size(); + } + + /** + * Writes the manifest to {@link #FILE_NAME} in {@code projectRoot}. + * + *

Pass the project root, never the source directory: see the note on the + * class about the manifest otherwise shipping inside the application bundle.

+ */ + public void write(File projectRoot) throws IOException { + File out = new File(projectRoot, FILE_NAME); + try (Writer w = new OutputStreamWriter(Files.newOutputStream(out.toPath()), UTF8)) { + w.write("# Provenance of every file in the generated project's source directory.\n"); + w.write("# Written by the ParparVM translator; consumed by\n"); + w.write("# scripts/check-native-warnings.py to decide who owns a compiler warning.\n"); + w.write("#\n"); + w.write("# Format: ||\n"); + w.write("# origin is one of: generated, runtime, port, vendored\n"); + w.write("#\n"); + w.write("# generated has no source: it did not exist before this build.\n"); + w.write("\n"); + for (Entry e : entries.values()) { + w.write(e.name); + w.write('|'); + w.write(e.origin.name().toLowerCase()); + w.write('|'); + w.write(e.source); + w.write('\n'); + } + } + } +} diff --git a/vm/tests/src/test/java/com/codename1/tools/translator/CleanTargetIntegrationTest.java b/vm/tests/src/test/java/com/codename1/tools/translator/CleanTargetIntegrationTest.java index c6a027bab47..7dcd91d594a 100644 --- a/vm/tests/src/test/java/com/codename1/tools/translator/CleanTargetIntegrationTest.java +++ b/vm/tests/src/test/java/com/codename1/tools/translator/CleanTargetIntegrationTest.java @@ -264,6 +264,122 @@ void generatesRunnableExecutableForWindowsAppType(CompilerHelper.CompilerConfig * environment. This is a compile check (clang-cl /c) -- linking the full app * is exercised separately once a CN1 app translation is wired. */ + /** + * The translator records where every file in the generated source directory came + * from, so that a later pass over a compiler's output can tell a codegen defect + * from a port bug from vendored third-party code. Without this the four kinds are + * indistinguishable siblings in one flat directory. + * + *

Three things are asserted, and each of them has already been wrong once:

+ *
    + *
  • The manifest is complete. Every source in the directory is named by + * it, and it names nothing that is not there. A copy path added later without + * a matching recorder shows up here as an unrecorded file; a file renamed + * after it was recorded (the clean target rewrites + * {@code cn1_class_method_index.m} to {@code .c}) shows up as a phantom.
  • + *
  • All three of our origins are populated. A manifest that classified + * everything as one origin would pass a completeness check and be useless.
  • + *
  • It is NOT inside the source directory. The Apple path lists that + * directory into the Xcode project and {@code getFileType} has no case for + * {@code .txt}, so a manifest left there lands in the resources build phase + * and is copied inside the shipped {@code .app}.
  • + *
+ */ + @org.junit.jupiter.api.Test + void recordsSourceProvenanceOutsideTheSourceDirectory() throws Exception { + java.util.List configs = new java.util.ArrayList<>(); + for (String v : new String[] { "17", "21", "25", "11", "1.8" }) { + configs.addAll(CompilerHelper.getAvailableCompilers(v)); + } + org.junit.jupiter.api.Assumptions.assumeFalse(configs.isEmpty(), "No JDK available to translate with"); + CompilerHelper.CompilerConfig config = configs.get(0); + + Parser.cleanup(); + Path sourceDir = Files.createTempDirectory("manifest-sources"); + Path classesDir = Files.createTempDirectory("manifest-classes"); + Path javaApiDir = Files.createTempDirectory("manifest-japi"); + Path javaFile = sourceDir.resolve("HelloWorld.java"); + Files.write(javaFile, helloWorldSource().getBytes(StandardCharsets.UTF_8)); + Files.write(sourceDir.resolve("native_hello.c"), nativeHelloSource().getBytes(StandardCharsets.UTF_8)); + + CompilerHelper.compileJavaAPI(javaApiDir, config); + List compileArgs = new java.util.ArrayList<>(); + if (CompilerHelper.useClasspath(config)) { + compileArgs.add("-source"); compileArgs.add(config.targetVersion); + compileArgs.add("-target"); compileArgs.add(config.targetVersion); + compileArgs.add("-classpath"); compileArgs.add(javaApiDir.toString()); + } else { + compileArgs.add("-source"); compileArgs.add(config.targetVersion); + compileArgs.add("-target"); compileArgs.add(config.targetVersion); + compileArgs.add("-bootclasspath"); compileArgs.add(javaApiDir.toString()); + compileArgs.add("-Xlint:-options"); + } + compileArgs.add("-d"); compileArgs.add(classesDir.toString()); + compileArgs.add(javaFile.toString()); + assertEquals(0, CompilerHelper.compile(config.jdkHome, compileArgs), "HelloWorld should compile"); + CompilerHelper.copyDirectory(javaApiDir, classesDir); + // A hand-written native, so the "port" origin has something in it. This is the + // file whose provenance is lost the instant it is copied next to the generated + // code, which is the whole reason the manifest exists. + Files.copy(sourceDir.resolve("native_hello.c"), classesDir.resolve("native_hello.c")); + + Path outputDir = Files.createTempDirectory("manifest-output"); + runTranslator(classesDir, outputDir, "ManifestApp", "clean"); + + Path distDir = outputDir.resolve("dist"); + Path srcRoot = distDir.resolve("ManifestApp-src"); + Path manifest = distDir.resolve("cn1-source-manifest.txt"); + + assertTrue(Files.exists(manifest), "translator should write " + manifest); + assertFalse(Files.exists(srcRoot.resolve("cn1-source-manifest.txt")), + "the manifest must not sit in the source directory: the Apple path lists that " + + "directory into the Xcode project and would ship the manifest inside the .app"); + + java.util.Map originByName = new java.util.HashMap<>(); + for (String line : Files.readAllLines(manifest, StandardCharsets.UTF_8)) { + if (line.isEmpty() || line.startsWith("#")) { + continue; + } + String[] parts = line.split("\\|", -1); + assertEquals(3, parts.length, "malformed manifest line: " + line); + originByName.put(parts[0], parts[1]); + } + + java.util.Set onDisk = new java.util.TreeSet<>(); + try (java.util.stream.Stream files = Files.list(srcRoot)) { + files.filter(Files::isRegularFile) + .map(f -> f.getFileName().toString()) + .filter(n -> n.endsWith(".c") || n.endsWith(".m") || n.endsWith(".h") || n.endsWith(".S")) + .forEach(onDisk::add); + } + assertFalse(onDisk.isEmpty(), "the translation produced no sources at all"); + + java.util.Set unrecorded = new java.util.TreeSet<>(onDisk); + unrecorded.removeAll(originByName.keySet()); + assertTrue(unrecorded.isEmpty(), + "these sources are in the generated project but the manifest does not name them, " + + "so nothing can tell who owns a warning in them -- a copy path was probably " + + "added without a recorder: " + unrecorded); + + java.util.Set phantom = new java.util.TreeSet<>(); + for (String name : originByName.keySet()) { + if ((name.endsWith(".c") || name.endsWith(".m") || name.endsWith(".h") || name.endsWith(".S")) + && !onDisk.contains(name)) { + phantom.add(name); + } + } + assertTrue(phantom.isEmpty(), + "the manifest names sources that are not in the generated project; something " + + "renamed or removed a file after recording it: " + phantom); + + java.util.Set origins = new java.util.TreeSet<>(originByName.values()); + assertTrue(origins.contains("generated"), "no generated code was recorded: " + origins); + assertTrue(origins.contains("runtime"), "no ParparVM runtime was recorded: " + origins); + assertTrue(origins.contains("port"), "no hand-written native was recorded: " + origins); + assertEquals("port", originByName.get("native_hello.c"), + "the hand-written native must not be classified as generated code"); + } + @org.junit.jupiter.api.Test void compilesWindowsPortNativeLayer() throws Exception { org.junit.jupiter.api.Assumptions.assumeTrue(CompilerHelper.isWindows(), From 34613839a86339ea6c385df4018a6846a5f9cb20 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 11:45:55 +0300 Subject: [PATCH 2/8] Ratchet on build coverage rather than demanding the whole manifest The completeness guard asked the wrong question. It required every source in the manifest to appear as compiled, but the manifest names every file in the generated project and a target legitimately builds a subset: a .metal goes through CompileMetalFile rather than CompileC, and a source can be excluded from a target outright. Demanding all of them would have failed the first real census for a reason that is not a defect. The thing actually worth catching is different: a build that compiled LESS than the one the baseline was frozen from. That is what an incremental build looks like, it reports no warnings, and it is indistinguishable from a clean codebase. So the ratchet is on coverage, recorded in coverage-.txt beside the baseline. It is exact, needs no threshold, and needs nobody to enumerate which files a given target happens to include. A build that compiles nothing at all is still fatal on its own. Sources the manifest lists that this target never builds are now reported rather than fatal, which is the honest reading of them. Also recognises the real task-line shape, checked against Xcode 26.3 output rather than assumed: the task name is followed by output, source, "normal", the arch, and a trailing "(in target ... from project ...)". Both that line and the CompileMetalFile form are in the fixture now, so neither can regress silently. Co-Authored-By: Claude Opus 5 (1M context) --- scripts/check-native-warnings.py | 97 ++++++++++++++++++---- scripts/native-warnings/parser-fixture.log | 6 +- 2 files changed, 88 insertions(+), 15 deletions(-) diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py index d7806d208d2..d002765264d 100755 --- a/scripts/check-native-warnings.py +++ b/scripts/check-native-warnings.py @@ -56,7 +56,14 @@ # Xcode names the source it is about to compile; ninja and make announce the # object. Either way this is how we learn what the build ACTUALLY compiled, as # opposed to what it could have compiled. -COMPILE_XCODE_RE = re.compile(r'^\s*CompileC\s+(?:"[^"]*"|\S+)\s+(?P"[^"]+"|\S+)\s+normal\b') +# Xcode names the task, the output, then the source: +# CompileC normal arm64 objective-c com.apple.compilers... (in target ...) +# Verified against Xcode 26.3 output. CompileMetalFile and the assembler use the +# same shape, and a .metal that only CompileC were matched would look like a +# source the build skipped. +COMPILE_XCODE_RE = re.compile( + r'^\s*(?:CompileC|CompileMetalFile|CompileAssembly)\s+(?:"[^"]*"|\S+)\s+' + r'(?P"[^"]+"|\S+)\s+normal\b') # CMake's two generators announce the same thing with different progress # prefixes -- ninja counts jobs ("[7/91]"), make counts percent ("[ 3%]") -- and # the prefix is absent entirely when progress reporting is off. One optional group @@ -267,15 +274,66 @@ def classify(diags, manifest, leg): return unattributed -def check_completeness(manifest, compiled): - """Sources the manifest lists that this build never compiled. +def coverage_path(leg): + return os.path.join(BASELINE_DIR, "coverage-%s.txt" % leg) - An incremental build recompiles nothing and reports no warnings, which reads - exactly like a clean codebase. Comparing sets of sources rather than counts - keeps a multi-architecture or multi-target build from looking incomplete. + +def read_coverage(leg): + """The sources the build that wrote this leg's baseline actually compiled.""" + path = coverage_path(leg) + if not os.path.exists(path): + return None + names = set() + with open(path, encoding="utf-8") as fh: + for line in fh: + line = line.strip() + if line and not line.startswith("#"): + names.add(line) + return names + + +def write_coverage(leg, compiled): + with open(coverage_path(leg), "w", encoding="utf-8") as fh: + fh.write("# Sources compiled by the build that produced baseline-%s.txt.\n" % leg) + fh.write("#\n") + fh.write("# The gate fails when a later run compiles FEWER of these. An incremental\n") + fh.write("# build recompiles nothing and reports no warnings, which reads exactly like\n") + fh.write("# a clean codebase; comparing against what was covered once makes that\n") + fh.write("# impossible to mistake for progress.\n") + fh.write("#\n") + fh.write("# Not the same as the manifest: the manifest lists every file in the\n") + fh.write("# generated project, and a build legitimately compiles a subset of it.\n") + fh.write("\n") + for name in sorted(compiled): + fh.write("%s\n" % name) + + +def check_completeness(manifest, compiled, leg): + """Whether this build covered as much as the one the baseline came from. + + Two different questions live here, and conflating them is what made the first + version of this unusable: + + - Did this build compile ANYTHING? An incremental build recompiles nothing and + reports no warnings; so does the documented xcodebuild failure where a bad + ARCHS override makes every target compile nothing while still copying + resources. Both are indistinguishable from a clean codebase, and both are + fatal to a census. + - Did it compile everything the manifest lists? No, and it should not have to. + The manifest names every file in the generated project, and a target + legitimately builds a subset -- a .metal goes through a different task, a + source can be excluded from the target. Failing on that would be demanding + the wrong invariant. + + So the ratchet is on COVERAGE, measured against the build that wrote the + baseline. It is exact, needs no threshold, and needs nobody to enumerate which + files a target happens to include. """ expected = {n for n in manifest if n.endswith(SOURCE_EXTS)} - return sorted(expected - set(compiled)), sorted(expected) + never_compiled = sorted(expected - set(compiled)) + previous = read_coverage(leg) + regressed = sorted(previous - set(compiled)) if previous else [] + return never_compiled, sorted(expected), regressed def baseline_path(leg): @@ -422,7 +480,8 @@ def self_test(): header = [d for d in diags if os.path.basename(d.path) == "cn1_globals.h"] if len(header) != 1: problems.append("header warning deduped to %d entries, expected 1" % len(header)) - if not {"IOSNative.m", "cn1_globals.c", "cn1_virtual_thread.c"} <= compiled: + if not {"IOSNative.m", "cn1_globals.c", "cn1_virtual_thread.c", + "CN1MetalShaders.metal"} <= compiled: problems.append("did not recognise the compile lines: %s" % sorted(compiled)) if problems: for p in problems: @@ -522,19 +581,27 @@ def main(): diags, compiled = parse_log(text) - missing, expected = check_completeness(manifest, compiled) + never_compiled, expected, regressed = check_completeness(manifest, compiled, args.leg) if not args.allow_partial: if not compiled: print("FAIL: this log records no compilation at all, so an empty warning list " "means nothing. A build that compiles nothing while still copying " "resources looks exactly like this.", file=sys.stderr) return 2 - if missing: - print("FAIL: %d of %d sources were not compiled by this build, so the census " - "would undercount. Re-run against a clean build.\n %s%s" - % (len(missing), len(expected), "\n ".join(missing[:40]), - "\n ..." if len(missing) > 40 else ""), file=sys.stderr) + if regressed: + print("FAIL: %d source(s) that the baselined build compiled were not compiled " + "by this one, so the census undercounts and a warning could disappear " + "without being fixed. Re-run against a cold build.\n %s%s" + % (len(regressed), "\n ".join(regressed[:40]), + "\n ..." if len(regressed) > 40 else ""), file=sys.stderr) return 2 + print("coverage: %d source(s) compiled; %d of the %d in the manifest were not built by " + "this target" % (len(compiled), len(never_compiled), len(expected))) + if never_compiled: + shown = ", ".join(never_compiled[:20]) + if len(never_compiled) > 20: + shown += ", ... (%d more)" % (len(never_compiled) - 20) + print(" not built by this target: %s" % shown) unattributed = classify(diags, manifest, args.leg) if unattributed: @@ -559,7 +626,9 @@ def main(): if args.write_baseline: n = write_baseline(args.leg, diags, "leg: %s\nlog: %s" % (args.leg, os.path.basename(args.log))) + write_coverage(args.leg, compiled) print("wrote %d baseline entries to %s" % (n, baseline_path(args.leg))) + print("wrote %d covered sources to %s" % (len(compiled), coverage_path(args.leg))) return 0 gating = [d for d in diags if d.group in GATING_GROUPS] diff --git a/scripts/native-warnings/parser-fixture.log b/scripts/native-warnings/parser-fixture.log index a2f4cf5f0f2..f10bf1576cd 100644 --- a/scripts/native-warnings/parser-fixture.log +++ b/scripts/native-warnings/parser-fixture.log @@ -8,7 +8,11 @@ # Not a real log format -- comments are simply lines the grammars do not match, # which is itself worth asserting. -CompileC /tmp/dd/Objects-normal/arm64/IOSNative.o /tmp/proj/HelloApp-src/IOSNative.m normal arm64 objective-c com.apple.compilers.llvm.clang.1_0.compiler +CompileC /tmp/dd/Objects-normal/arm64/IOSNative.o /tmp/proj/HelloApp-src/IOSNative.m normal arm64 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'HelloApp' from project 'HelloApp') +# A .metal goes through a DIFFERENT task. Matching only CompileC made it look +# like a source the build skipped, which is how "in the manifest but not in this +# target" got confused with "this build was incremental". +CompileMetalFile /tmp/dd/Metal/default.air /tmp/proj/HelloApp-src/CN1MetalShaders.metal normal arm64 metal com.apple.compilers.metal (in target 'HelloApp' from project 'HelloApp') [1/9] Building C object CMakeFiles/HelloApp.dir/HelloApp-src/cn1_globals.c.o # The SAME announcement from CMake's other generator. Make counts percent where # ninja counts jobs; missing this form made a complete build look like one that From cee5aa5b0f4c912677de92124f5c610fc2c36ef5 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 11:47:53 +0300 Subject: [PATCH 3/8] Resolve a port file to the port the leg actually built METALView.h and METALView.m exist in both Ports/MacPort and Ports/iOSPort/nativeSources, so resolving a warning's file by name alone was ambiguous and would have refused the macOS leg outright the first time either one warned. The leg already answers it: a macOS build compiled the MacPort copy. Listing each leg's port trees most-specific-first states that rather than guessing at it, and a name claimed by a more specific tree is not reconsidered. A name that appears twice inside a SINGLE port tree still refuses to resolve. There the leg tells us nothing, and picking one would put a file nobody edited into the baseline. Also indexes each port tree once instead of walking it per diagnostic, which was O(diagnostics x files) against a census that carries thousands. Co-Authored-By: Claude Opus 5 (1M context) --- scripts/check-native-warnings.py | 51 +++++++++++++++++++++++++------- 1 file changed, 40 insertions(+), 11 deletions(-) diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py index d002765264d..15642396e0f 100755 --- a/scripts/check-native-warnings.py +++ b/scripts/check-native-warnings.py @@ -94,9 +94,16 @@ GATING_GROUPS = ("generated", "runtime", "port", "toolchain") ALL_GROUPS = GATING_GROUPS + ("vendored", "sdk") -# Port source directories per leg. Used only to turn a bare file name from the -# manifest back into a repo-relative path, so the baseline can name the file a -# human has to open. +# Port source directories per leg, MOST SPECIFIC FIRST. Used to turn a bare file +# name from the manifest back into a repo-relative path, so the baseline names the +# file a human has to open. +# +# Order matters and is not a tiebreak of convenience: METALView.m exists in both +# Ports/MacPort and Ports/iOSPort/nativeSources, and for a macOS build it is the +# MacPort one that was compiled. The leg knows which port it built, so listing that +# port first states a fact rather than guessing. A name that appears twice inside a +# SINGLE port tree is still a hard error -- there the leg tells us nothing and +# picking one would blame a file nobody edited. LEG_PORT_DIRS = { "ios-sim-debug": ["Ports/iOSPort/nativeSources"], "ios-device-release": ["Ports/iOSPort/nativeSources"], @@ -214,6 +221,35 @@ def read_manifest(path): return entries +_PORT_INDEX = {} + + +def port_index(leg): + """{file name: [repo-relative paths]} for the port trees this leg builds from. + + Built once per leg. The obvious spelling -- walk the tree looking for the name + each time a diagnostic needs resolving -- is O(diagnostics x files), and a real + census carries thousands of diagnostics. + """ + if leg in _PORT_INDEX: + return _PORT_INDEX[leg] + index = {} + for rel in LEG_PORT_DIRS.get(leg, []): + base = os.path.join(ROOT, rel) + if not os.path.isdir(base): + continue + here = {} + for dirpath, _dirs, files in os.walk(base): + for fn in files: + here.setdefault(fn, []).append( + os.path.relpath(os.path.join(dirpath, fn), ROOT)) + # A more specific port tree already claimed this name; see LEG_PORT_DIRS. + for fn, paths in here.items(): + index.setdefault(fn, paths) + _PORT_INDEX[leg] = index + return index + + def resolve_port_path(name, leg): """Repo-relative path of a hand-written native, or None if it is not ours. @@ -222,14 +258,7 @@ def resolve_port_path(name, leg): a hard error rather than a guess: picking one would attribute a warning to a file nobody edited. """ - matches = [] - for rel in LEG_PORT_DIRS.get(leg, []): - base = os.path.join(ROOT, rel) - if not os.path.isdir(base): - continue - for dirpath, _dirs, files in os.walk(base): - if name in files: - matches.append(os.path.relpath(os.path.join(dirpath, name), ROOT)) + matches = port_index(leg).get(name, []) if len(matches) > 1: raise SystemExit( "ambiguous port file %r for leg %s: %s\nResolve by scoping LEG_PORT_DIRS; " From 45abdc7baefff9879b00a3a9aadbffa87dfdd0b6 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 11:53:18 +0300 Subject: [PATCH 4/8] Test vendored provenance before SDK provenance "/Library/Developer/" also matches a developer's own ~/Library/Developer/Xcode/DerivedData, so a Swift package checkout under SourcePackages was being labelled an Apple SDK header. The vendored markers are the more specific ones and belong first. Neither group gates, so no verdict changes -- but the census exists to be read, and one that misattributes what it reports is not worth reading. Co-Authored-By: Claude Opus 5 (1M context) --- scripts/check-native-warnings.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py index 15642396e0f..d936fa7a3b9 100755 --- a/scripts/check-native-warnings.py +++ b/scripts/check-native-warnings.py @@ -294,10 +294,16 @@ def classify(diags, manifest, leg): else: unattributed.append(d) continue - if any(marker in norm for marker in SDK_MARKERS): - d.group, d.identity = "sdk", name - elif any(marker in norm for marker in VENDORED_MARKERS): + # Vendored is tested first because its markers are the more specific ones. + # "/Library/Developer/" matches a developer's own + # ~/Library/Developer/Xcode/DerivedData, so checking SDK first labelled a + # Swift package checkout as an Apple SDK header. Neither group gates, so + # this only ever affected what the report claimed -- but a census nobody + # believes is no better than no census. + if any(marker in norm for marker in VENDORED_MARKERS): d.group, d.identity = "vendored", name + elif any(marker in norm for marker in SDK_MARKERS): + d.group, d.identity = "sdk", name else: unattributed.append(d) return unattributed From 584caa96d25e52e0040398de85385be49454d7a7 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 11:56:55 +0300 Subject: [PATCH 5/8] Bound the rendered table so a large census still reports The summary table had a row per distinct warning kind, and the iOS leg carries far more of them than the clean target does. GitHub drops a step summary whole once it exceeds 1MB, so an unbounded table risks costing the entire report rather than its tail -- the failure mode being a census that ran, found everything, and showed nothing. Capped per group, with the hidden rows counted rather than silently dropped, and a line saying the tail is in the JSON dump. The census itself is unchanged; this only bounds what a human is asked to scroll. Co-Authored-By: Claude Opus 5 (1M context) --- scripts/check-native-warnings.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py index d936fa7a3b9..40e2815f110 100755 --- a/scripts/check-native-warnings.py +++ b/scripts/check-native-warnings.py @@ -424,6 +424,13 @@ def write_baseline(leg, diags, config): return len(counts) +# Rows per group in the rendered table. The JSON dump carries everything; this +# only bounds what a human is asked to scroll, and keeps the GitHub step summary +# under its 1MB ceiling -- past which GitHub drops the whole summary, so an +# unbounded table would cost the entire report rather than its tail. +MAX_ROWS_PER_GROUP = 60 + + def summarize(diags, out): by_group = {} for d in diags: @@ -454,11 +461,18 @@ def summarize(diags, out): out.write("Sorted by instance count: the top row is the single highest-leverage fix.\n\n") out.write("| instances | identity | flag | shape | seen in |\n") out.write("|---|---|---|---|---|\n") - for key, n in sorted(counts.items(), key=lambda kv: (-kv[1], kv[0])): + ranked = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0])) + for key, n in ranked[:MAX_ROWS_PER_GROUP]: _group, identity, flag, sig = key.split("|", 3) names = sorted(files[key]) shown = ", ".join(names[:3]) + (" (+%d more)" % (len(names) - 3) if len(names) > 3 else "") out.write("| %d | %s | %s | %s | %s |\n" % (n, identity, flag, sig[:80], shown)) + if len(ranked) > MAX_ROWS_PER_GROUP: + hidden = ranked[MAX_ROWS_PER_GROUP:] + out.write("\n%d further row(s) not shown, %d instance(s) between them. " + "They are in the --json dump; this table is truncated for length, " + "not because the tail was dropped from the census.\n" + % (len(hidden), sum(n for _k, n in hidden))) out.write("\n") From 74fe911480f7f24819fc0a3a7e4ed49523e97b6f Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 12:37:00 +0300 Subject: [PATCH 6/8] Spell the manifest's origin tokens instead of folding the enum name SpotBugs DM_CONVERT_CASE, and it is the tree's documented rule rather than a style nit: String.toLowerCase() is locale sensitive, and Codename One has no java.util.Locale to ask for the root one, so the fold a device performs depends on who is holding it. A protocol token another program parses back is exactly the case that must never be produced by folding. The four current constants happen to contain no dotted I, so nothing was broken today -- but the next one added could, and it would fail only for users whose device is set to Turkish or Azerbaijani, with nothing throwing. Writing the token out also means the manifest's wire format is stated in the enum rather than being an accident of the Java identifier, so renaming a constant can no longer silently change the file that check-native-warnings.py parses. Co-Authored-By: Claude Opus 5 (1M context) --- .../tools/translator/SourceManifest.java | 33 ++++++++++++++++--- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java index 97cbdaa03c3..49b51db0569 100644 --- a/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java +++ b/vm/ByteCodeTranslator/src/com/codename1/tools/translator/SourceManifest.java @@ -79,27 +79,50 @@ public enum Origin { * Emitted by the translator from Java bytecode. A warning here is a defect in * an emitter, and fixing one emitter fixes every file it wrote. */ - GENERATED, + GENERATED("generated"), /** * The ParparVM runtime, copied verbatim out of the translator's own jar * ({@code cn1_globals.m}, {@code nativeMethods.m} and friends). Hand-written * and ours. */ - RUNTIME, + RUNTIME("runtime"), /** * A hand-written native from one of the ports, or from a cn1lib. Ours to fix * when it is a port file; the consumer resolves which by looking the name up * in the checked-out tree. */ - PORT, + PORT("port"), /** * Third-party code we bundle but do not maintain, such as the SQLite * amalgamation. Reported, never gated. */ - VENDORED + VENDORED("vendored"); + + private final String token; + + Origin(String token) { + this.token = token; + } + + /** + * How this origin is spelled in the manifest. + * + *

A literal, not {@code name().toLowerCase()}. Case folding is locale + * sensitive and Codename One has no {@code java.util.Locale} to ask for the + * root one, so the fold a device performs depends on who is holding it -- and + * this is a protocol token another program parses back, which is exactly the + * case that must never be produced by folding. Writing it out also means the + * wire format is stated here rather than being an accident of the Java + * identifier, so renaming the constant cannot silently change the file.

+ * + * @return the lower-case ASCII token, identical on every device + */ + public String token() { + return token; + } } private static final Charset UTF8 = Charset.forName("UTF-8"); @@ -233,7 +256,7 @@ public void write(File projectRoot) throws IOException { for (Entry e : entries.values()) { w.write(e.name); w.write('|'); - w.write(e.origin.name().toLowerCase()); + w.write(e.origin.token()); w.write('|'); w.write(e.source); w.write('\n'); From 40e9fd9c40f3e2a7f1923cc56851cb7bd3e88ff2 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 15:59:33 +0300 Subject: [PATCH 7/8] Freeze the iOS warning baseline and gate on it The first real census of an iOS build: 92,129 warning lines in a 1.17M-line log, none of which anything had ever counted. 60,952 of them are ours and gating, across 157 distinct kinds. Coverage confirms it came from a cold build -- 3,147 sources compiled, none of the manifest's 3,133 skipped. What the split by owner buys is visible immediately. Generated code is four emitters, two of which account for essentially all of it: 50,967 -Wunused-variable and 9,094 -Wincompatible-pointer-types-discards-qualifiers. The 814 warnings in the hand-written port were the ones worth finding, and they were unreadable underneath that: 470 deprecations (OpenGLES, and MPMoviePlayerController asking for AVPlayerViewController), 67 -Wshorten-64-to-32, 21 -Wint-conversion, 10 ARC bridge casts in non-ARC code, 6 -Wunsupported-availability-guard -- availability checks that do not guard -- and 4 -Wundeclared-selector, which is the class the macOS template already makes an error because it crashes on the device. Three log-transport defects had to be fixed first, all found in the real log rather than imagined. xcodebuild's output reaches the log through a pipe and a long diagnostic can arrive broken at an arbitrary byte: - split in the PATH, leaving a file name like "odename1_ui_Display.m" that belongs to nothing; - split in the MESSAGE, which is worse because the first half still parses and yields a message shape of "unuse" -- a baseline row that could never match again; - and occasionally bytes are LOST rather than split, so the path is gone outright. Those are counted and reported as lost, never attributed and never baselined: a row keyed on no file cannot recur, so baselining one would guarantee a stale entry later. Both joins are self-validating rather than guessed -- a path join must produce something that parses, a message join must complete a trailing flag that was absent. All three shapes are now in the parser fixture. A fileless diagnostic carrying a [-Wflag] is one of the lost ones, not a build-system warning; clang flags belong to file-scoped diagnostics, and that is what separates it from a genuine "Skipping duplicate build file". Two provenance rules the census asked for: an embedded watch or tv app is a second, independent ParparVM translation writing to a sibling -src directory, so its output is generated code by the same argument as the main app's; and an .xcframework is unzipped into the build's own products directory before its headers are compiled, so those arrive under a local-looking path and are not ours. The leg now gates rather than reporting, and runs --probe afterwards so a gate that has gone blind fails the same day. Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/scripts-ios.yml | 1 + scripts/check-native-warnings.py | 118 +- .../baseline-ios-sim-debug.txt | 179 + .../coverage-ios-sim-debug.txt | 3157 +++++++++++++++++ scripts/native-warnings/parser-fixture.log | 26 + scripts/run-ios-ui-tests.sh | 44 +- 6 files changed, 3505 insertions(+), 20 deletions(-) create mode 100644 scripts/native-warnings/baseline-ios-sim-debug.txt create mode 100644 scripts/native-warnings/coverage-ios-sim-debug.txt diff --git a/.github/workflows/scripts-ios.yml b/.github/workflows/scripts-ios.yml index cd2201f7ed2..3dfffb91aad 100644 --- a/.github/workflows/scripts-ios.yml +++ b/.github/workflows/scripts-ios.yml @@ -298,6 +298,7 @@ jobs: artifacts/vm_time.txt artifacts/xcodebuild-list.txt artifacts/cn1-source-manifest.txt + artifacts/ios-ui-tests/native-warnings.json if-no-files-found: warn retention-days: 14 diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py index 40e2815f110..85af99d6c09 100755 --- a/scripts/check-native-warnings.py +++ b/scripts/check-native-warnings.py @@ -89,8 +89,20 @@ VENDORED_MARKERS = ( "/Pods/", "/SourcePackages/", "/Checkouts/", "/DerivedData/", "/node_modules/", "/.build/", "/third_party/", "/xwin/", + # An .xcframework is unzipped into the build's own products directory before + # its headers are compiled against, so those headers arrive under a path that + # looks local and is not: TensorFlowLiteC's c_api.h reached the census this + # way. Not ours, and not something an application author can fix. + "/XCFrameworkIntermediates/", ".framework/Headers/", ) +# A companion watchOS or tvOS app embedded in an iOS project is translated by a +# SECOND, independent ParparVM run, which writes its output to a sibling -src +# directory and its own manifest that nothing stages. Its files are generated code +# by exactly the same argument as the main app's, and a warning in one is a defect +# in the same emitter, so it is attributed the same way rather than left homeless. +COMPANION_SRC_MARKERS = ("/watch-src/", "/tv-src/") + GATING_GROUPS = ("generated", "runtime", "port", "toolchain") ALL_GROUPS = GATING_GROUPS + ("vendored", "sdk") @@ -158,13 +170,81 @@ def key(self): return "|".join((self.group, self.identity, self.flag, signature(self.msg))) +# A line that is nothing but a path fragment: no whitespace, contains a slash, and +# carries no diagnostic of its own. xcodebuild occasionally breaks a long +# diagnostic across two lines at an arbitrary column, leaving the path prefix on +# one line and the rest on the next -- measured at 8 occurrences in 92,129 warnings +# on the iOS leg. Rare, but it produced file names like "odename1_ui_Display.m" +# (com_c + odename1_ui_Display.m), which belong to no file that exists and so could +# not be attributed to anyone. +SPLIT_PREFIX_RE = re.compile(r'^\S*/\S*$') + +# Lines that legitimately follow a diagnostic and must never be glued onto it: +# clang's source snippet and caret (both indented), the include-trace header, and +# a build task announcement. +CONTINUATION_EXCLUDE_RE = re.compile( + r'^(?:\s|In file included from\b|[A-Z][A-Za-z]+\s+/|\[\s*\d)') + + +def _parses(line): + return bool(GNU_RE.match(line) or MSVC_RE.match(line)) + + +def rejoin_split_lines(lines): + """Puts diagnostics back together that the log transport broke in two. + + xcodebuild's output reaches the log through a pipe, and a long diagnostic + occasionally arrives split at an arbitrary byte with the remainder on the next + line -- measured at roughly 18 occurrences in 92,129 warnings on the iOS leg. + It happens in two places, and both were found in real output rather than + imagined: + + - in the PATH, leaving "com_c" on one line and + "odename1_ui_Display.m:5646:5: warning: ..." on the next, which names a file + that does not exist and so belongs to nobody; + - in the MESSAGE, leaving "... warning: unuse" and then "d variable 'SP' + [-Wunused-variable]", which parses fine and produces a truncated message + shape -- a bogus baseline row that would never match again. + + Both joins are self-validating rather than guessed. A path join is only made + when the result parses as a diagnostic at all; a message join only when it + completes a trailing [-Wflag] that was absent before. Anything that does not + satisfy that is left exactly as it came. + """ + out = [] + i = 0 + n = len(lines) + while i < n: + line = lines[i] + nxt = lines[i + 1] if i + 1 < n else None + + if nxt is not None and not _parses(line) and SPLIT_PREFIX_RE.match(line) \ + and ": warning:" not in line and ": error:" not in line \ + and ": note:" not in line and _parses(line + nxt): + out.append(line + nxt) + i += 2 + continue + + if nxt is not None and _parses(line) and not FLAG_RE.search(line) \ + and not _parses(nxt) and not CONTINUATION_EXCLUDE_RE.match(nxt) \ + and FLAG_RE.search(line + nxt): + out.append(line + nxt) + i += 2 + continue + + out.append(line) + i += 1 + return out + + def parse_log(text): """Every warning in the log, deduplicated, plus the sources that were compiled.""" seen = {} order = [] compiled = set() - for raw in text.splitlines(): - line = raw.rstrip("\r") + lost = 0 + for raw in rejoin_split_lines([l.rstrip("\r") for l in text.splitlines()]): + line = raw m = COMPILE_XCODE_RE.match(line) if m: @@ -196,14 +276,23 @@ def parse_log(text): m = BARE_RE.match(line) if not m or m.group("sev") != "warning": continue - # No file: a linker or driver diagnostic. It still matters -- ThinLTO - # puts real findings here -- but it belongs to no source. + # A fileless diagnostic that nonetheless carries a [-Wflag] is not a + # build-system warning -- clang flags belong to file-scoped diagnostics. + # It is a compiler warning whose path the log transport dropped outright + # (bytes lost, not merely split, so nothing can put it back). Counting + # these keeps them visible; attributing them to the toolchain would be a + # lie, and baselining them would freeze a row that can never recur. + if FLAG_RE.search(m.group("msg")): + lost += 1 + continue + # No file and no flag: a linker or driver diagnostic. It still matters -- + # ThinLTO puts real findings here -- but it belongs to no source. d = Diagnostic("", 0, 0, "", m.group("msg")) if d.dedup_key not in seen: seen[d.dedup_key] = d order.append(d) - return order, compiled + return order, compiled, lost def read_manifest(path): @@ -294,6 +383,9 @@ def classify(diags, manifest, leg): else: unattributed.append(d) continue + if any(marker in norm for marker in COMPANION_SRC_MARKERS): + d.group, d.identity = "generated", "*" + continue # Vendored is tested first because its markers are the more specific ones. # "/Library/Developer/" matches a developer's own # ~/Library/Developer/Xcode/DerivedData, so checking SDK first labelled a @@ -506,7 +598,7 @@ def self_test(): caret lines that must not be mistaken for diagnostics. """ with open(FIXTURE, encoding="utf-8") as fh: - diags, compiled = parse_log(fh.read()) + diags, compiled, lost = parse_log(fh.read()) got = {(os.path.basename(d.path), d.line, d.col, d.flag, signature(d.msg)) for d in diags} expected = { ("IOSNative.m", 4211, 9, "-Wdeprecated-declarations", @@ -518,6 +610,13 @@ def self_test(): ("", 0, 0, "", "object file was built for newer iOS version than being linked"), ("com_codename1_ui_Form.m", 1502, 17, "-Wunused-variable", "unused variable ?"), + # Rejoined from a path split; the fragment alone named no real file. + ("com_codename1_ui_Display.m", 5646, 5, "-Wunused-variable", "unused variable ?"), + # Rejoined from a message split; unjoined this reads "unuse". + ("com_codename1_ui_Form.m", 912, 9, "-Wunused-variable", "unused variable ?"), + # A real fileless build-system warning, kept. + ("", 0, 0, "", + "Skipping duplicate build file in Compile Sources build phase"), } problems = [] for extra in sorted(got - expected): @@ -526,6 +625,8 @@ def self_test(): problems.append("failed to parse: %r" % (missing,)) # The header diagnostic appears three times in the fixture -- twice from # different TUs, once from a second architecture -- and must survive as one. + if lost != 1: + problems.append("expected exactly 1 truncation-lost diagnostic, got %d" % lost) header = [d for d in diags if os.path.basename(d.path) == "cn1_globals.h"] if len(header) != 1: problems.append("header warning deduped to %d entries, expected 1" % len(header)) @@ -628,7 +729,7 @@ def main(): text += "\n%s:1:1: warning: %s [%s]\n" % (target, PROBE_MESSAGE, PROBE_FLAG) probe_key = "|".join(("runtime", target, PROBE_FLAG, PROBE_MESSAGE)) - diags, compiled = parse_log(text) + diags, compiled, lost = parse_log(text) never_compiled, expected, regressed = check_completeness(manifest, compiled, args.leg) if not args.allow_partial: @@ -644,6 +745,9 @@ def main(): % (len(regressed), "\n ".join(regressed[:40]), "\n ..." if len(regressed) > 40 else ""), file=sys.stderr) return 2 + if lost: + print("note: %d diagnostic(s) lost their file to log truncation and are not " + "attributed to anyone; they are reported here and never baselined." % lost) print("coverage: %d source(s) compiled; %d of the %d in the manifest were not built by " "this target" % (len(compiled), len(never_compiled), len(expected))) if never_compiled: diff --git a/scripts/native-warnings/baseline-ios-sim-debug.txt b/scripts/native-warnings/baseline-ios-sim-debug.txt new file mode 100644 index 00000000000..24621db65d3 --- /dev/null +++ b/scripts/native-warnings/baseline-ios-sim-debug.txt @@ -0,0 +1,179 @@ +# Compiler warnings in the ios-sim-debug build, as of the day this gate was added. +# +# This is a ratchet, not an allow-list: new code must not add entries. +# Delete an entry when the warning stops reproducing -- a stale entry is a +# failure too, so the file cannot quietly describe a build nobody runs. +# +# A baseline is only comparable to a census taken from the SAME build. This +# one came from: +# leg: ios-sim-debug +# log: xcodebuild-build.log +# +# Format: |||| +# +# identity is a repo-relative path for port code, the file name for the +# runtime, and '*' for generated code -- there the unit of authorship is the +# emitter, not the file. +# +# A diagnostic cannot be -Wno-'d or -Werror='d on its own. The only +# remedies for one are fixing it or a whole-file pragma. +# +# Regenerate with scripts/check-native-warnings.py --leg ios-sim-debug --write-baseline + +generated|*|-Wimplicitly-unsigned-literal|integer literal is too large to be represented in a signed integer type, interpreting as unsigned|4 instance(s) when the baseline was written; not yet triaged +generated|*|-Wincompatible-pointer-types-discards-qualifiers|passing ? to parameter of type ? discards qualifiers|9094 instance(s) when the baseline was written; not yet triaged +generated|*|-Wparentheses-equality|equality comparison with extraneous parentheses|42 instance(s) when the baseline was written; not yet triaged +generated|*|-Wunused-variable|unused variable ?|50967 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/AudioPlayer.m|-Wincomplete-implementation|method definition for ? not found|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1AudioUnit.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1Camera.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use AVCaptureDeviceDiscoverySession instead.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1Crypto.m|-Warc-bridge-casts-disallowed-in-nonarc|? casts have no effect when not using ARC|10 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1Crypto.m|-Wunused-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1DragAndDrop.m|-Wunused-variable|unused variable ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|77 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wincompatible-pointer-types-discards-qualifiers|assigning to ? (aka ?) from ? (aka ?) discards qualifiers|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wint-conversion|incompatible pointer to integer conversion initializing ? (aka ?) with an expression of type ?|18 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wnonportable-include-path|non-portable path to file ?; specified path differs in case from file name on disk|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wpointer-sign|passing ? (aka ?) to parameter of type ? (aka ?) converts between pointers to integer types with different sign|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ?|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wunused-function|unused function ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1ES2compat.m|-Wunused-variable|unused variable ?|10 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1Language.m|-Wunused-function|unused function ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1SoundPool.m|-Wobjc-multiple-method-names|multiple methods named ? found|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1TapGestureRecognizer.m|-Wobjc-method-access|instance method ? not found (return type defaults to ?)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1TapGestureRecognizer.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ?|5 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1TextInputView.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1VideoIO.m|-Wunused-function|unused function ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1Vision.m|-Wunused-function|unused function ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1WatchConnectivity.m|-Wunused-const-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CN1WatchViewController.m|-Wincomplete-implementation|method definition for ? not found|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/ClearRect.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|11 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/ClearRect.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/ClipRect.m|-Wunused-variable|unused variable ?|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLAppDelegate.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLAppDelegate.m|-Wmismatched-parameter-types|conflicting parameter types in implementation of ?: ? vs ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLAppDelegate.m|-Wnonnull|null passed to a callee that requires a non-null argument|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.h|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|7 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|33 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - UIActionSheet is deprecated. Use UIAlertController with a preferredStyle of UIAlertControllerStyleActionSheet instead|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - UIPopoverController is deprecated. Popovers are now implemented as UIViewController presentations. Use a modal presentation style of UIModalPresentationPopover and UIPopoverPresentationController.|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use -[UIDevice userInterfaceIdiom] directly.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use UIBarStyleBlack and set the translucent property to YES instead.|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use the block-based animation API instead|12 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use the interfaceOrientation property of the window scene instead.|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use the statusBarManager property of the window scene instead.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wdeprecated-declarations|? is deprecated: first deprecated in watchOS ? - This method is unsafe because it could potentially cause buffer overruns. Use -getBytes:length: instead.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wenum-conversion|implicit conversion from enumeration type ? (aka ?) to different enumeration type ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wenum-conversion|implicit conversion from enumeration type ? to different enumeration type ? (aka ?)|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wincompatible-pointer-types|incompatible pointer types initializing ? (aka ?) with an expression of type ? (aka ?)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wint-conversion|incompatible pointer to integer conversion assigning to ? (aka ?) from ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wobjc-method-access|instance method ? not found (return type defaults to ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wobjc-missing-super-calls|method possibly missing a [super awakeFromNib] call|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wpointer-sign|passing ? (aka ?) to parameter of type ? converts between pointers to integer types with different sign|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ?|9 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ? (aka ?)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/CodenameOne_GLViewController.m|-Wunused-variable|unused variable ?|12 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/Curve.c|-Wunused-function|unused function ?|8 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawGradient.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|19 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawGradient.m|-Wenum-conversion|implicit conversion from enumeration type ? to different enumeration type ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawGradient.m|-Wunused-const-variable|unused variable ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawGradient.m|-Wunused-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawImage.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|19 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawImage.m|-Wunused-const-variable|unused variable ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawImage.m|-Wunused-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawLine.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|13 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawLine.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawPath.m|-Wincompatible-pointer-types|incompatible pointer types assigning to ? (aka ?) from ? (aka ?)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawRect.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|13 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawRect.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawString.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawString.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|19 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawString.m|-Wenum-conversion|implicit conversion from enumeration type ? to different enumeration type ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawString.m|-Wunused-const-variable|unused variable ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawString.m|-Wunused-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawStringTextureCache.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawStringTextureCache.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use -[UIDevice userInterfaceIdiom] directly.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/DrawTextureAlphaMask.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|29 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/EAGLView.h|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/EAGLView.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|26 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/EAGLView.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES is deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|6 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/ExecutableOp.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ? (aka ?)|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/FillPolygon.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|13 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/FillPolygon.m|-Wobjc-missing-super-calls|method possibly missing a [super dealloc] call|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/FillPolygon.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/FillRect.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|13 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/FillRect.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/GLUIImage.m|-Wenum-conversion|implicit conversion from enumeration type ? to different enumeration type ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/GLUIImage.m|-Wpointer-sign|passing ? to parameter of type ? (aka ?) converts between pointers to integer types with different sign|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wconditional-type-mismatch|pointer/integer type mismatch in conditional expression (? and ? (aka ?))|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|11 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Should not be used for applications that support multiple scenes as it returns a key window across all connected scenes|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - The segmentedControlStyle property no longer has any effect|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - UIActionSheet is deprecated. Use UIAlertController with a preferredStyle of UIAlertControllerStyleActionSheet instead|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - UIActionSheet is deprecated. Use UIAlertController with a preferredStyle of UIAlertControllerStyleActionSheet instead.|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - UIPopoverController is deprecated. Popovers are now implemented as UIViewController presentations. Use a modal presentation style of UIModalPresentationPopover and UIPopoverPresentationController.|6 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use -[UIDevice userInterfaceIdiom] directly.|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use -initWithBoundsSize:requestHandler:|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-? encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid.|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use AVPlayerViewController in AVKit|50 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use AVPlayerViewController in AVKit.|46 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use UIBarStyleBlack and set the translucent property to YES instead.|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use appropriate initializers instead|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use kSecUseAuthenticationContext and set LAContext.localizedReason property|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use the interfaceOrientation property of the window scene instead.|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in watchOS ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in watchOS ? - Please use AVAudioApplication requestRecordPermissionWithCompletionHandler|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wdeprecated-declarations|? is deprecated: first deprecated in watchOS ? - Use kSecUseAuthenticationContext and set LAContext.localizedReason property|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wenum-conversion|implicit conversion from enumeration type ? (aka ?) to different enumeration type ? (aka ?)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wextra-tokens|extra tokens at end of #endif directive|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wformat|values of type ? should not be used as format arguments; add an explicit cast to ? instead|6 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wincompatible-pointer-types-discards-qualifiers|initializing ? with an expression of type ? discards qualifiers|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wincompatible-pointer-types|incompatible pointer types assigning to ? (aka ?) from ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wincompatible-pointer-types|incompatible pointer types passing ? (aka ?) to parameter of type ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wint-conversion|incompatible integer to pointer conversion passing ? (aka ?) to parameter of type ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wint-conversion|incompatible pointer to integer conversion initializing ? (aka ?) with an expression of type ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wint-conversion|incompatible pointer to integer conversion passing ? to parameter of type ? (aka ?)|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wint-conversion|incompatible pointer to integer conversion returning ? from a function with result type ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wnonnull|null passed to a callee that requires a non-null argument|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wobjc-method-access|instance method ? not found (return type defaults to ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ?|7 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ? (aka ?)|6 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? to ?|28 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wtautological-pointer-compare|comparison of function ? not equal to a null pointer is always true|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wundeclared-selector|undeclared selector ?|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wunguarded-availability-new|? is only available on iOS ? or newer|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wunsupported-availability-guard|@available does not guard availability here; use if (@available) instead|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wunused-function|unused function ?|11 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m|-Wunused-variable|unused variable ?|13 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m||? may not respond to ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/IOSNative.m||assigning to ? from incompatible type ?|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.h|-Wnullability-completeness|pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified)|8 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Provide a custom network activity UI in your app if desired.|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Use NSURLSession (see NSURLSession.h)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wdeprecated-declarations|? is deprecated: first deprecated in watchOS ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wnonnull|null passed to a callee that requires a non-null argument|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ?|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/NetworkConnectionImpl.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? to ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/Renderer.c|-Wunused-function|unused function ?|4 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/ResetAffine.m|-Wobjc-designated-initializers|designated initializer missing a ? call to a designated initializer of the super class|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/SocketImpl.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/SocketImpl.m|-Wunused-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/TileImage.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - OpenGLES API deprecated. (Define GLES_SILENCE_DEPRECATION to silence these warnings)|19 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/TileImage.m|-Wunused-variable|unused variable ?|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/UIWebViewEventDelegate.m|-Wdeprecated-declarations|? is deprecated: first deprecated in iOS ? - Provide a custom network activity UI in your app if desired.|3 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/UIWebViewEventDelegate.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ? (aka ?)|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/UIWebViewEventDelegate.m|-Wunused-variable|unused variable ?|1 instance(s) when the baseline was written; not yet triaged +port|Ports/iOSPort/nativeSources/WebSocketImpl.m|-Wunsupported-availability-guard|@available does not guard availability here; use if (@available) instead|6 instance(s) when the baseline was written; not yet triaged +runtime|cn1_globals.m|-Wformat|format specifies type ? but the argument has type ?|2 instance(s) when the baseline was written; not yet triaged +runtime|cn1_globals.m|-Wint-conversion|incompatible pointer to integer conversion assigning to ? (aka ?) from ?|2 instance(s) when the baseline was written; not yet triaged +runtime|cn1_globals.m|-Wpointer-to-int-cast|cast to smaller integer type ? (aka ?) from ? (aka ?)|2 instance(s) when the baseline was written; not yet triaged +runtime|cn1_globals.m|-Wunused-function|unused function ?|6 instance(s) when the baseline was written; not yet triaged +runtime|cn1_globals.m|-Wunused-variable|unused variable ?|8 instance(s) when the baseline was written; not yet triaged +runtime|nativeMethods.m|-Wpointer-to-int-cast|cast to smaller integer type ? (aka ?) from ? (aka ?)|4 instance(s) when the baseline was written; not yet triaged +runtime|nativeMethods.m|-Wshorten-64-to-32|implicit conversion loses integer precision: ? (aka ?) to ? (aka ?)|4 instance(s) when the baseline was written; not yet triaged +runtime|nativeMethods.m|-Wunused-variable|unused variable ?|2 instance(s) when the baseline was written; not yet triaged +toolchain|||Skipping duplicate build file in Compile Sources build phase: /Users/runner/work/CodenameOne/CodenameOne/scripts/hellocodenameone/ios/target/hellocodenameone-ios-?-SNAPSHOT-ios-source/HelloCodenameOne-src/com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImpl.swift (in target ? from project ?)|1 instance(s) when the baseline was written; not yet triaged diff --git a/scripts/native-warnings/coverage-ios-sim-debug.txt b/scripts/native-warnings/coverage-ios-sim-debug.txt new file mode 100644 index 00000000000..f1f6488f955 --- /dev/null +++ b/scripts/native-warnings/coverage-ios-sim-debug.txt @@ -0,0 +1,3157 @@ +# Sources compiled by the build that produced baseline-ios-sim-debug.txt. +# +# The gate fails when a later run compiles FEWER of these. An incremental +# build recompiles nothing and reports no warnings, which reads exactly like +# a clean codebase; comparing against what was covered once makes that +# impossible to mistake for progress. +# +# Not the same as the manifest: the manifest lists every file in the +# generated project, and a build legitimately compiles a subset of it. + +AudioPlayer.m +BlurRegion.m +CN1AR.m +CN1AppleMapKit.m +CN1AppleSignIn.m +CN1AudioUnit.m +CN1Bluetooth.m +CN1CGGraphics.m +CN1Call.m +CN1Camera.m +CN1CrashProtection.m +CN1Crypto.m +CN1DragAndDrop.m +CN1ES1compat.m +CN1ES2compat.m +CN1GL3D.m +CN1Health.m +CN1Inference.m +CN1IntentHost.m +CN1JailbreakDetector.m +CN1Language.m +CN1MacWindows.m +CN1MetalGlyphAtlas.m +CN1MetalPipelineCache.m +CN1Metalcompat.m +CN1Nearby.m +CN1OidcBrowser.m +CN1SmartHome.m +CN1SoundPool.m +CN1TapGestureRecognizer.m +CN1TextInputView.m +CN1UITextField.m +CN1UITextView.m +CN1VideoIO.m +CN1Vision.m +CN1Vpn.m +CN1WatchBootstrap.m +CN1WatchConnectivity.m +CN1WatchHost.m +CN1WatchRenderingView.m +CN1WatchRuntime.m +CN1WatchViewController.m +CN1WebAuthn.m +ClearRect.m +ClipRect.m +CodenameOne_CarPlaySceneDelegate.m +CodenameOne_GLAppDelegate.m +CodenameOne_GLSceneDelegate.m +CodenameOne_GLViewController.m +Curve.c +Dasher.c +DrawGradient.m +DrawGradientTextureCache.m +DrawImage.m +DrawLine.m +DrawMultiStopGradient.m +DrawPath.m +DrawRect.m +DrawString.m +DrawStringTextureCache.m +DrawTextureAlphaMask.m +EAGLView.m +ExecutableOp.m +FacebookImpl.m +FillPolygon.m +FillRect.m +GLUIImage.m +GoogleConnectImpl.m +HeadphonesDetector.m +Helpers.c +IOSNative.m +IOSSimd.m +METALView.m +NetworkConnectionImpl.m +PaintOp.m +RadialGradientPaint.m +Renderer.c +ResetAffine.m +Rotate.m +Scale.m +SetTransform.m +SocketImpl.m +Stroker.c +TFLCommonUtil.mm +TFLCoreMLDelegate.m +TFLDelegate.m +TFLErrorUtil.m +TFLInterpreter.mm +TFLInterpreterOptions.m +TFLQuantizationParameters.m +TFLSignatureRunner.mm +TFLTensor.m +TileImage.m +Transformer.c +UIWebViewEventDelegate.m +WebSocketImpl.m +cn1_class_method_index.m +cn1_debugger.m +cn1_debugger_objects.c +cn1_globals.m +cn1_sqlite3.c +cn1_virtual_thread.c +cn1_virtual_thread_asm.S +cn1app_IntentBootstrap.m +com_bench_CommonWorkloads.m +com_bench_CommonWorkloads_Node.m +com_codename1_ads_AbstractFullScreenAd.m +com_codename1_ads_AbstractFullScreenAd_1.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_1.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_2.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_3.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_4.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_5.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_6.m +com_codename1_ads_AbstractFullScreenAd_Dispatcher_7.m +com_codename1_ads_AdCallback.m +com_codename1_ads_AdConfig.m +com_codename1_ads_AdError.m +com_codename1_ads_AdFormat.m +com_codename1_ads_AdListener.m +com_codename1_ads_AdManager.m +com_codename1_ads_AdRequest.m +com_codename1_ads_BannerAd.m +com_codename1_ads_BannerAd_1.m +com_codename1_ads_BannerAd_Dispatcher.m +com_codename1_ads_BannerAd_Dispatcher_1.m +com_codename1_ads_BannerAd_Dispatcher_2.m +com_codename1_ads_BannerAd_Dispatcher_3.m +com_codename1_ads_BannerAd_Dispatcher_4.m +com_codename1_ads_NativeAd.m +com_codename1_ads_NativeAdLoader.m +com_codename1_ads_NativeAdLoader_1.m +com_codename1_ads_NativeAdLoader_2.m +com_codename1_ads_NativeAdLoader_2_1.m +com_codename1_ads_NativeAdLoader_3.m +com_codename1_ads_NativeAdLoader_3_1.m +com_codename1_ads_OnUserEarnedRewardListener.m +com_codename1_ads_RewardItem.m +com_codename1_ads_ServerSideVerificationOptions.m +com_codename1_ads_mock_MockAdProvider.m +com_codename1_ads_mock_MockAdProvider_MockBanner.m +com_codename1_ads_mock_MockAdProvider_MockBannerSession.m +com_codename1_ads_mock_MockAdProvider_MockFullScreen.m +com_codename1_ads_spi_AdConsentController.m +com_codename1_ads_spi_AdProvider.m +com_codename1_ads_spi_AdSessionCallback.m +com_codename1_ads_spi_BannerAdSession.m +com_codename1_ads_spi_FullScreenAdSession.m +com_codename1_ads_spi_NativeAdProvider.m +com_codename1_ai_ChatMessage.m +com_codename1_ai_MessagePart.m +com_codename1_ai_Role.m +com_codename1_ai_TextPart.m +com_codename1_ai_inference_InferenceException.m +com_codename1_ai_inference_InferenceOptions.m +com_codename1_ai_inference_InferenceOptions_Accelerator.m +com_codename1_ai_inference_InferenceSession.m +com_codename1_ai_inference_InferenceSession_1.m +com_codename1_ai_inference_InferenceSession_2.m +com_codename1_ai_inference_InferenceSession_SessionOpenResource.m +com_codename1_ai_inference_ModelSource.m +com_codename1_ai_inference_Tensor.m +com_codename1_ai_inference_TensorInfo.m +com_codename1_ai_inference_TensorType.m +com_codename1_ai_inference_Tensor_1.m +com_codename1_ai_language_LanguageBackend.m +com_codename1_ai_language_LanguageBackends.m +com_codename1_ai_language_LanguageBackends_1.m +com_codename1_ai_language_LanguageBackends_Named.m +com_codename1_ai_language_LanguageCandidate.m +com_codename1_ai_language_LanguageIdentifier.m +com_codename1_ai_language_LanguageIdentifier_1.m +com_codename1_ai_language_LanguageIdentifier_Session.m +com_codename1_ai_language_LanguageIdentifier_Session_1.m +com_codename1_ai_language_LanguageOptions.m +com_codename1_ai_language_LanguageSession.m +com_codename1_ai_language_LanguageSession_1.m +com_codename1_ai_language_LanguageSession_2.m +com_codename1_ai_language_LanguageSession_Completion.m +com_codename1_ai_language_LanguageSession_Operation.m +com_codename1_ai_language_LanguageSession_OperationResource.m +com_codename1_ai_language_SmartReply.m +com_codename1_ai_language_SmartReplyMessage.m +com_codename1_ai_language_SmartReply_1.m +com_codename1_ai_language_SmartReply_Session.m +com_codename1_ai_language_SmartReply_Session_1.m +com_codename1_ai_language_Translator.m +com_codename1_ai_language_Translator_1.m +com_codename1_ai_language_Translator_Session.m +com_codename1_ai_language_Translator_Session_1.m +com_codename1_ai_vision_AbstractVisionAnalyzer.m +com_codename1_ai_vision_AbstractVisionAnalyzer_AnalysisResource.m +com_codename1_ai_vision_AbstractVisionAnalyzer_AnalysisResource_1.m +com_codename1_ai_vision_AbstractVisionAnalyzer_AnalysisResource_2.m +com_codename1_ai_vision_Barcode.m +com_codename1_ai_vision_BarcodeScanner.m +com_codename1_ai_vision_DocumentScanResult.m +com_codename1_ai_vision_DocumentScanner.m +com_codename1_ai_vision_Face.m +com_codename1_ai_vision_FaceDetector.m +com_codename1_ai_vision_ImageLabel.m +com_codename1_ai_vision_ImageLabeler.m +com_codename1_ai_vision_Pose.m +com_codename1_ai_vision_PoseDetector.m +com_codename1_ai_vision_Pose_Landmark.m +com_codename1_ai_vision_SegmentationMask.m +com_codename1_ai_vision_SelfieSegmenter.m +com_codename1_ai_vision_TextRecognitionResult.m +com_codename1_ai_vision_TextRecognitionResult_TextBlock.m +com_codename1_ai_vision_TextRecognizer.m +com_codename1_ai_vision_TextScript.m +com_codename1_ai_vision_VisionAnalyzer.m +com_codename1_ai_vision_VisionBackend.m +com_codename1_ai_vision_VisionBackends.m +com_codename1_ai_vision_VisionBackends_1.m +com_codename1_ai_vision_VisionBackends_NamedBackend.m +com_codename1_ai_vision_VisionException.m +com_codename1_ai_vision_VisionFeature.m +com_codename1_ai_vision_VisionImage.m +com_codename1_ai_vision_VisionMetadata.m +com_codename1_ai_vision_VisionOptions.m +com_codename1_ai_vision_VisionPoint.m +com_codename1_ai_vision_VisionRect.m +com_codename1_analytics_Analytics.m +com_codename1_analytics_AnalyticsCapability.m +com_codename1_analytics_AnalyticsConsent.m +com_codename1_analytics_AnalyticsContext.m +com_codename1_analytics_AnalyticsCrashReport.m +com_codename1_analytics_AnalyticsEvent.m +com_codename1_analytics_AnalyticsEvent_Builder.m +com_codename1_analytics_AnalyticsProvider.m +com_codename1_analytics_ConsentMode.m +com_codename1_ar_AR.m +com_codename1_ar_ARAnchor.m +com_codename1_ar_ARAnchorEvent.m +com_codename1_ar_ARAnchorEvent_Kind.m +com_codename1_ar_ARAnchorListener.m +com_codename1_ar_ARCapabilities.m +com_codename1_ar_ARFaceAnchor.m +com_codename1_ar_ARFaceRegion.m +com_codename1_ar_ARHitResult.m +com_codename1_ar_ARHitResult_Type.m +com_codename1_ar_ARImageAnchor.m +com_codename1_ar_ARLightEstimate.m +com_codename1_ar_ARModel.m +com_codename1_ar_ARNode.m +com_codename1_ar_ARPlane.m +com_codename1_ar_ARPlaneDetection.m +com_codename1_ar_ARPlaneEvent.m +com_codename1_ar_ARPlaneEvent_Kind.m +com_codename1_ar_ARPlaneListener.m +com_codename1_ar_ARPlane_Type.m +com_codename1_ar_ARPose.m +com_codename1_ar_ARReferenceImage.m +com_codename1_ar_ARSession.m +com_codename1_ar_ARSessionOptions.m +com_codename1_ar_ARSession_1.m +com_codename1_ar_ARSession_Bridge.m +com_codename1_ar_ARSession_Bridge_1.m +com_codename1_ar_ARTrackingFailureReason.m +com_codename1_ar_ARTrackingListener.m +com_codename1_ar_ARTrackingMode.m +com_codename1_ar_ARTrackingState.m +com_codename1_ar_ARView.m +com_codename1_ar_AR_1.m +com_codename1_ar_AR_2.m +com_codename1_ar_AR_3.m +com_codename1_background_BackgroundFetch.m +com_codename1_background_BackgroundWorker.m +com_codename1_bluetooth_AdapterState.m +com_codename1_bluetooth_AdapterStateListener.m +com_codename1_bluetooth_Bluetooth.m +com_codename1_bluetooth_BluetoothDevice.m +com_codename1_bluetooth_BluetoothError.m +com_codename1_bluetooth_BluetoothException.m +com_codename1_bluetooth_BluetoothUuid.m +com_codename1_bluetooth_Bluetooth_1.m +com_codename1_bluetooth_gatt_GattCharacteristic.m +com_codename1_bluetooth_gatt_GattDescriptor.m +com_codename1_bluetooth_gatt_GattNotificationListener.m +com_codename1_bluetooth_gatt_GattService.m +com_codename1_bluetooth_gatt_GattStatus.m +com_codename1_bluetooth_le_AdvertisementData.m +com_codename1_bluetooth_le_BlePeripheral.m +com_codename1_bluetooth_le_BlePeripheral_1.m +com_codename1_bluetooth_le_BlePeripheral_19.m +com_codename1_bluetooth_le_BlePeripheral_20.m +com_codename1_bluetooth_le_BlePeripheral_5.m +com_codename1_bluetooth_le_BlePeripheral_6.m +com_codename1_bluetooth_le_BlePeripheral_Claiming.m +com_codename1_bluetooth_le_BlePeripheral_NoApply.m +com_codename1_bluetooth_le_BleScan.m +com_codename1_bluetooth_le_BluetoothLE.m +com_codename1_bluetooth_le_BluetoothLE_1.m +com_codename1_bluetooth_le_BluetoothLE_2.m +com_codename1_bluetooth_le_BluetoothLE_ScanRegistration.m +com_codename1_bluetooth_le_ConnectionEvent.m +com_codename1_bluetooth_le_ConnectionListener.m +com_codename1_bluetooth_le_ConnectionState.m +com_codename1_bluetooth_le_GattOperationQueue.m +com_codename1_bluetooth_le_GattOperationQueue_2.m +com_codename1_bluetooth_le_GattOperationQueue_Op.m +com_codename1_bluetooth_le_L2capChannel.m +com_codename1_bluetooth_le_L2capServer.m +com_codename1_bluetooth_le_ScanFilter.m +com_codename1_bluetooth_le_ScanListener.m +com_codename1_bluetooth_le_ScanMode.m +com_codename1_bluetooth_le_ScanResult.m +com_codename1_bluetooth_le_ScanSettings.m +com_codename1_bluetooth_le_server_BleAdvertisement.m +com_codename1_bluetooth_le_server_BleCentral.m +com_codename1_bluetooth_le_server_GattLocalCharacteristic.m +com_codename1_bluetooth_le_server_GattLocalDescriptor.m +com_codename1_bluetooth_le_server_GattReadRequest.m +com_codename1_bluetooth_le_server_GattServer.m +com_codename1_bluetooth_le_server_GattServerListener.m +com_codename1_bluetooth_le_server_GattServer_1.m +com_codename1_bluetooth_le_server_GattServer_2.m +com_codename1_bluetooth_le_server_GattServer_3.m +com_codename1_bluetooth_le_server_GattServer_4.m +com_codename1_bluetooth_le_server_GattServer_5.m +com_codename1_bluetooth_le_server_GattServer_6.m +com_codename1_bluetooth_le_server_GattServer_7.m +com_codename1_bluetooth_le_server_GattWriteRequest.m +com_codename1_calendar_CalendarAlarm.m +com_codename1_calendar_CalendarAlarm_Method.m +com_codename1_calendar_CalendarAttachment.m +com_codename1_calendar_CalendarAttendee.m +com_codename1_calendar_CalendarAttendee_Response.m +com_codename1_calendar_CalendarAttendee_Role.m +com_codename1_calendar_CalendarCapabilities.m +com_codename1_calendar_CalendarCapability.m +com_codename1_calendar_CalendarConference.m +com_codename1_calendar_CalendarDateTime.m +com_codename1_calendar_CalendarDateUtil.m +com_codename1_calendar_CalendarError.m +com_codename1_calendar_CalendarEvent.m +com_codename1_calendar_CalendarEvent_Availability.m +com_codename1_calendar_CalendarEvent_Privacy.m +com_codename1_calendar_CalendarEvent_Status.m +com_codename1_calendar_CalendarException.m +com_codename1_calendar_CalendarRecurrenceRule.m +com_codename1_calendar_CalendarRecurrenceRule_Frequency.m +com_codename1_calendar_CalendarSource.m +com_codename1_calendar_CalendarTask.m +com_codename1_calendar_ICalendarCodec.m +com_codename1_calendar_ICalendarCodec_Component.m +com_codename1_calendar_ICalendarCodec_Property.m +com_codename1_calendar_LocalCalendarSource.m +com_codename1_call_CallDirection.m +com_codename1_call_CallEndReason.m +com_codename1_call_CallError.m +com_codename1_call_CallException.m +com_codename1_call_CallHandle.m +com_codename1_call_CallHandleType.m +com_codename1_call_CallId.m +com_codename1_call_CallState.m +com_codename1_call_directory_CallDirectory.m +com_codename1_call_session_CallAction.m +com_codename1_call_session_CallActionListener.m +com_codename1_call_session_CallAudioRoute.m +com_codename1_call_session_CallAudioSession.m +com_codename1_call_session_CallSession.m +com_codename1_call_session_Calls.m +com_codename1_call_session_Calls_ActionEvent.m +com_codename1_call_session_Calls_ActionEvent_PendingStartCleanup.m +com_codename1_call_session_Calls_EndCleanup.m +com_codename1_call_session_Calls_MuteChange.m +com_codename1_call_session_Calls_StateChange.m +com_codename1_call_spi_CallBridge.m +com_codename1_call_voip_PushedCall.m +com_codename1_call_voip_VoipPush.m +com_codename1_call_voip_VoipPushListener.m +com_codename1_call_voip_VoipPush_Delivery.m +com_codename1_camera_Camera.m +com_codename1_camera_CameraFacing.m +com_codename1_camera_CameraFrame.m +com_codename1_camera_CameraInfo.m +com_codename1_camera_CameraSession.m +com_codename1_camera_CameraSessionOptions.m +com_codename1_camera_CameraView.m +com_codename1_camera_Camera_1.m +com_codename1_camera_CapturedPhoto.m +com_codename1_camera_FrameFormat.m +com_codename1_camera_FrameListener.m +com_codename1_camera_PhotoCaptureOptions.m +com_codename1_camera_ScaleType.m +com_codename1_capture_VideoCaptureConstraints.m +com_codename1_capture_VideoCaptureConstraints_Compiler.m +com_codename1_car_Car.m +com_codename1_car_CarAction.m +com_codename1_car_CarActionListener.m +com_codename1_car_CarActionStrip.m +com_codename1_car_CarApplication.m +com_codename1_car_CarColor.m +com_codename1_car_CarConnectionListener.m +com_codename1_car_CarContext.m +com_codename1_car_CarGridItem.m +com_codename1_car_CarGridTemplate.m +com_codename1_car_CarListTemplate.m +com_codename1_car_CarMessageTemplate.m +com_codename1_car_CarNavigationTemplate.m +com_codename1_car_CarNowPlayingTemplate.m +com_codename1_car_CarPaneTemplate.m +com_codename1_car_CarRow.m +com_codename1_car_CarScreen.m +com_codename1_car_CarSection.m +com_codename1_car_CarSurfaceCallback.m +com_codename1_car_CarTemplate.m +com_codename1_car_Car_1.m +com_codename1_car_Car_2.m +com_codename1_car_spi_CarBridge.m +com_codename1_charts_ChartComponent.m +com_codename1_charts_ChartComponent_1.m +com_codename1_charts_ChartComponent_BBox.m +com_codename1_charts_ChartUtil.m +com_codename1_charts_compat_Canvas.m +com_codename1_charts_compat_GradientDrawable.m +com_codename1_charts_compat_GradientDrawable_Orientation.m +com_codename1_charts_compat_Paint.m +com_codename1_charts_compat_Paint_Style.m +com_codename1_charts_compat_PathMeasure.m +com_codename1_charts_models_AreaSeries.m +com_codename1_charts_models_CategorySeries.m +com_codename1_charts_models_MultipleCategorySeries.m +com_codename1_charts_models_Point.m +com_codename1_charts_models_RangeCategorySeries.m +com_codename1_charts_models_SeriesSelection.m +com_codename1_charts_models_TimeSeries.m +com_codename1_charts_models_XYEntry.m +com_codename1_charts_models_XYMultipleSeriesDataset.m +com_codename1_charts_models_XYSeries.m +com_codename1_charts_models_XYSeries_IndexXYMap.m +com_codename1_charts_models_XYValueSeries.m +com_codename1_charts_renderers_BasicStroke.m +com_codename1_charts_renderers_DefaultRenderer.m +com_codename1_charts_renderers_SimpleSeriesRenderer.m +com_codename1_charts_renderers_XYMultipleSeriesRenderer.m +com_codename1_charts_renderers_XYMultipleSeriesRenderer_Orientation.m +com_codename1_charts_renderers_XYSeriesRenderer.m +com_codename1_charts_renderers_XYSeriesRenderer_FillOutsideLine.m +com_codename1_charts_renderers_XYSeriesRenderer_FillOutsideLine_Type.m +com_codename1_charts_util_ColorUtil.m +com_codename1_charts_util_ColorUtil_IColor.m +com_codename1_charts_util_MathHelper.m +com_codename1_charts_util_NumberFormat.m +com_codename1_charts_views_AbstractChart.m +com_codename1_charts_views_BarChart.m +com_codename1_charts_views_BarChart_Type.m +com_codename1_charts_views_BubbleChart.m +com_codename1_charts_views_ClickableArea.m +com_codename1_charts_views_CombinedXYChart.m +com_codename1_charts_views_CombinedXYChart_XYCombinedChartDef.m +com_codename1_charts_views_CubicLineChart.m +com_codename1_charts_views_DoughnutChart.m +com_codename1_charts_views_LineChart.m +com_codename1_charts_views_PieChart.m +com_codename1_charts_views_PieMapper.m +com_codename1_charts_views_PieSegment.m +com_codename1_charts_views_PkgUtils.m +com_codename1_charts_views_PointStyle.m +com_codename1_charts_views_RadarChart.m +com_codename1_charts_views_RangeBarChart.m +com_codename1_charts_views_RangeStackedBarChart.m +com_codename1_charts_views_RoundChart.m +com_codename1_charts_views_ScatterChart.m +com_codename1_charts_views_TimeChart.m +com_codename1_charts_views_XYChart.m +com_codename1_cloud_BindTarget.m +com_codename1_codescan_CodeScanner.m +com_codename1_codescan_ScanResult.m +com_codename1_compat_java_util_Objects.m +com_codename1_components_Accordion.m +com_codename1_components_Accordion_AccordionContent.m +com_codename1_components_Accordion_AccordionContent_1.m +com_codename1_components_ChatBubble.m +com_codename1_components_ChatBubble_1.m +com_codename1_components_ChatBubble_2.m +com_codename1_components_ChatInput.m +com_codename1_components_ChatInput_1.m +com_codename1_components_ChatInput_2.m +com_codename1_components_ChatInput_3.m +com_codename1_components_ChatInput_4.m +com_codename1_components_ChatView.m +com_codename1_components_ChatView_1.m +com_codename1_components_ChatView_2.m +com_codename1_components_FileTree.m +com_codename1_components_FileTreeModel.m +com_codename1_components_FloatingActionButton.m +com_codename1_components_FloatingActionButton_CreatePopupContentActionListener.m +com_codename1_components_FloatingActionButton_ReleaseActionListener.m +com_codename1_components_ImageViewer.m +com_codename1_components_ImageViewer_1Listener.m +com_codename1_components_ImageViewer_AnimatePanX.m +com_codename1_components_ImageViewer_CropBox.m +com_codename1_components_InfiniteProgress.m +com_codename1_components_InteractionDialog.m +com_codename1_components_InteractionDialog_1.m +com_codename1_components_InteractionDialog_2.m +com_codename1_components_InteractionDialog_3.m +com_codename1_components_InteractionDialog_4.m +com_codename1_components_InteractionDialog_5.m +com_codename1_components_InteractionDialog_BlockingSleepRunnable.m +com_codename1_components_InteractionDialog_NativeCloseBridge.m +com_codename1_components_InteractionDialog_NativeShowingEndedBridge.m +com_codename1_components_InteractionDialog_TimeoutDispatch.m +com_codename1_components_InteractionDialog_TimeoutSchedule.m +com_codename1_components_MultiButton.m +com_codename1_components_SpanButton.m +com_codename1_components_SpanLabel.m +com_codename1_components_StickyHeaderContainer.m +com_codename1_components_StickyHeaderContainer_1.m +com_codename1_components_StickyHeaderContainer_ScrollContainer.m +com_codename1_components_StickyHeaderContainer_Section.m +com_codename1_components_StickyHeaderContainer_StickyHostContainer.m +com_codename1_components_StickyHeaderContainer_StickyOverlayLayout.m +com_codename1_components_Switch.m +com_codename1_components_SwitchThumbDroplet.m +com_codename1_components_SwitchThumbDroplet_Tokens.m +com_codename1_components_Switch_1.m +com_codename1_components_Switch_2.m +com_codename1_components_Switch_3.m +com_codename1_components_Switch_4.m +com_codename1_components_ToastBar.m +com_codename1_components_ToastBar_1.m +com_codename1_components_ToastBar_4.m +com_codename1_components_ToastBar_5.m +com_codename1_components_ToastBar_FlushAnimationCallback.m +com_codename1_components_ToastBar_Status.m +com_codename1_components_ToastBar_Status_1.m +com_codename1_components_ToastBar_Status_1_1.m +com_codename1_components_ToastBar_ToastBarComponent.m +com_codename1_components_ToastBar_ToastBarComponent_1.m +com_codename1_components_ToastBar_ToastBarHolder.m +com_codename1_contacts_Address.m +com_codename1_contacts_Contact.m +com_codename1_contacts_ContactPicker.m +com_codename1_continuity_AppState.m +com_codename1_continuity_Continuity.m +com_codename1_continuity_ContinuityListener.m +com_codename1_continuity_Continuity_1.m +com_codename1_continuity_Continuity_11.m +com_codename1_continuity_Continuity_2.m +com_codename1_continuity_Continuity_3.m +com_codename1_continuity_Continuity_3_1.m +com_codename1_continuity_Continuity_3_2.m +com_codename1_continuity_Continuity_4.m +com_codename1_continuity_Continuity_5.m +com_codename1_continuity_Continuity_5_1.m +com_codename1_continuity_Continuity_5_2.m +com_codename1_continuity_Continuity_6.m +com_codename1_continuity_Continuity_7.m +com_codename1_continuity_Continuity_8.m +com_codename1_continuity_Continuity_8_1.m +com_codename1_continuity_Continuity_9.m +com_codename1_continuity_Continuity_Callback.m +com_codename1_continuity_Continuity_Callback_1.m +com_codename1_continuity_StateCodec.m +com_codename1_continuity_StateProvider.m +com_codename1_continuity_StateRelay.m +com_codename1_continuity_spi_ContinuityBridge.m +com_codename1_continuity_spi_ContinuityCallback.m +com_codename1_continuity_sync_SyncedStore.m +com_codename1_continuity_sync_SyncedStoreListener.m +com_codename1_db_Cursor.m +com_codename1_db_CursorExt.m +com_codename1_db_Database.m +com_codename1_db_DatabaseConfig.m +com_codename1_db_DatabaseEncryptionException.m +com_codename1_db_ManagedKeys.m +com_codename1_db_Row.m +com_codename1_db_RowExt.m +com_codename1_documents_DocumentIndexSerializer.m +com_codename1_documents_DocumentNode.m +com_codename1_documents_DocumentProvider.m +com_codename1_documents_spi_DocumentProviderBridge.m +com_codename1_generated_svg_ClippedBadge.m +com_codename1_generated_svg_ColorMorph.m +com_codename1_generated_svg_GradientCircle.m +com_codename1_generated_svg_LogoText.m +com_codename1_generated_svg_LottiePulse.m +com_codename1_generated_svg_LottieSpinner.m +com_codename1_generated_svg_PathArrow.m +com_codename1_generated_svg_PulsingCircle.m +com_codename1_generated_svg_SVGRegistry.m +com_codename1_generated_svg_SpinnerAnimated.m +com_codename1_generated_svg_Star.m +com_codename1_generated_svg_WavePath.m +com_codename1_gpu_Camera.m +com_codename1_gpu_GltfLoader.m +com_codename1_gpu_GltfLoader_GltfImageModel.m +com_codename1_gpu_GltfLoader_GltfModel.m +com_codename1_gpu_GpuCapabilities.m +com_codename1_gpu_GraphicsDevice.m +com_codename1_gpu_IndexBuffer.m +com_codename1_gpu_Light.m +com_codename1_gpu_Material.m +com_codename1_gpu_Material_Type.m +com_codename1_gpu_Matrix4.m +com_codename1_gpu_Mesh.m +com_codename1_gpu_PrimitiveType.m +com_codename1_gpu_Primitives.m +com_codename1_gpu_Quaternion.m +com_codename1_gpu_RenderState.m +com_codename1_gpu_RenderState_BlendMode.m +com_codename1_gpu_RenderState_CullMode.m +com_codename1_gpu_RenderView.m +com_codename1_gpu_Renderer.m +com_codename1_gpu_Texture.m +com_codename1_gpu_Texture_Filter.m +com_codename1_gpu_Texture_Wrap.m +com_codename1_gpu_VertexAttribute.m +com_codename1_gpu_VertexAttribute_Usage.m +com_codename1_gpu_VertexBuffer.m +com_codename1_gpu_VertexFormat.m +com_codename1_health_BloodPressureSample.m +com_codename1_health_CategorySample.m +com_codename1_health_Health.m +com_codename1_health_HealthAccess.m +com_codename1_health_HealthAggregationStyle.m +com_codename1_health_HealthAnchor.m +com_codename1_health_HealthBackgroundListener.m +com_codename1_health_HealthBackgroundListenerFactory.m +com_codename1_health_HealthChangeBatch.m +com_codename1_health_HealthChangeListener.m +com_codename1_health_HealthConfigurationException.m +com_codename1_health_HealthDataKind.m +com_codename1_health_HealthDataType.m +com_codename1_health_HealthError.m +com_codename1_health_HealthException.m +com_codename1_health_HealthQuantity.m +com_codename1_health_HealthSample.m +com_codename1_health_HealthSource.m +com_codename1_health_HealthStore.m +com_codename1_health_HealthStore_2.m +com_codename1_health_HealthStore_3.m +com_codename1_health_HealthStore_4.m +com_codename1_health_HealthStore_5.m +com_codename1_health_HealthStore_6.m +com_codename1_health_HealthStore_AuthorizationFlowDone.m +com_codename1_health_HealthStore_ByStart.m +com_codename1_health_HealthStore_CancelTimer.m +com_codename1_health_HealthStore_CompleteOnEdt.m +com_codename1_health_HealthStore_FailTimedOut.m +com_codename1_health_HealthStore_PendingAuth.m +com_codename1_health_HealthStore_PostProcess.m +com_codename1_health_HealthStore_TimeoutTask.m +com_codename1_health_HealthSubscription.m +com_codename1_health_HealthTimeRange.m +com_codename1_health_HealthUnit.m +com_codename1_health_HealthUnitDimension.m +com_codename1_health_HealthWriteResult.m +com_codename1_health_Health_DefaultWorkouts.m +com_codename1_health_QuantitySample.m +com_codename1_health_RecordingMethod.m +com_codename1_health_SamplePage.m +com_codename1_health_SampleQuery.m +com_codename1_health_SeriesSample.m +com_codename1_health_SessionSample.m +com_codename1_health_SleepSample.m +com_codename1_health_SleepStage.m +com_codename1_health_SleepStageInterval.m +com_codename1_health_SubscriptionRequest.m +com_codename1_health_WorkoutActivityType.m +com_codename1_health_WorkoutSample.m +com_codename1_health_nutrition_Nutrient.m +com_codename1_health_nutrition_NutritionSample.m +com_codename1_health_workout_WorkoutConfiguration.m +com_codename1_health_workout_WorkoutLocationType.m +com_codename1_health_workout_WorkoutManager.m +com_codename1_health_workout_WorkoutSession.m +com_codename1_health_workout_WorkoutSessionState.m +com_codename1_home_Accessory.m +com_codename1_home_AccessoryCategory.m +com_codename1_home_AccessoryService.m +com_codename1_home_AirQualityLevel.m +com_codename1_home_AlarmState.m +com_codename1_home_ChargingState.m +com_codename1_home_DoorState.m +com_codename1_home_FanMode.m +com_codename1_home_HeatingCoolingMode.m +com_codename1_home_HomeAuthorizationStatus.m +com_codename1_home_HomeChangeListener.m +com_codename1_home_HomeConfigurationException.m +com_codename1_home_HomeError.m +com_codename1_home_HomeException.m +com_codename1_home_HomeRoom.m +com_codename1_home_HomeStructure.m +com_codename1_home_HomeStructureEvent.m +com_codename1_home_HomeStructureListener.m +com_codename1_home_HomeZone.m +com_codename1_home_LockState.m +com_codename1_home_PositionState.m +com_codename1_home_Scene.m +com_codename1_home_SceneAction.m +com_codename1_home_SceneType.m +com_codename1_home_ServiceType.m +com_codename1_home_SmartHome.m +com_codename1_home_SmartHome_1.m +com_codename1_home_SmartHome_ChunkJoin.m +com_codename1_home_SmartHome_ChunkPart.m +com_codename1_home_SmartHome_Gateway.m +com_codename1_home_SmartHome_IssueRead.m +com_codename1_home_SmartHome_IssueWrite.m +com_codename1_home_SmartHome_RunAfterStart.m +com_codename1_home_SmartHome_StructureDispatch.m +com_codename1_home_StructureChangeKind.m +com_codename1_home_Trait.m +com_codename1_home_TraitChangeBatch.m +com_codename1_home_TraitConstraint.m +com_codename1_home_TraitReadRequest.m +com_codename1_home_TraitReading.m +com_codename1_home_TraitSubscription.m +com_codename1_home_TraitUnit.m +com_codename1_home_TraitUnitDimension.m +com_codename1_home_TraitValue.m +com_codename1_home_TraitValueKind.m +com_codename1_home_TraitValue_1.m +com_codename1_home_TraitWrite.m +com_codename1_home_TraitWriteResult.m +com_codename1_home_commissioning_Commissioner.m +com_codename1_home_commissioning_CommissioningRequest.m +com_codename1_home_commissioning_CommissioningResult.m +com_codename1_home_commissioning_CommissioningStyle.m +com_codename1_home_commissioning_SetupPayload.m +com_codename1_home_spi_HomeBridge.m +com_codename1_impl_ARImpl.m +com_codename1_impl_ARImpl_EventSink.m +com_codename1_impl_AbstractDBCursor.m +com_codename1_impl_CameraImpl.m +com_codename1_impl_CodenameOneImplementation.m +com_codename1_impl_CodenameOneImplementation_1.m +com_codename1_impl_CodenameOneImplementation_2.m +com_codename1_impl_CodenameOneImplementation_3.m +com_codename1_impl_CodenameOneImplementation_4.m +com_codename1_impl_CodenameOneImplementation_5.m +com_codename1_impl_CodenameOneImplementation_ContactPickerDelivery.m +com_codename1_impl_CodenameOneImplementation_LegacyAccessPointNetworkType.m +com_codename1_impl_CodenameOneImplementation_RPush.m +com_codename1_impl_CodenameOneImplementation_SharedContentDispatch.m +com_codename1_impl_CodenameOneImplementation_TapjackingDispatch.m +com_codename1_impl_CodenameOneThread.m +com_codename1_impl_ImplementationFactory.m +com_codename1_impl_InferenceImpl.m +com_codename1_impl_JdkApiRewriteHelper.m +com_codename1_impl_LanguageImpl.m +com_codename1_impl_OpenGalleryFileTree.m +com_codename1_impl_OpenGalleryFileTree_1.m +com_codename1_impl_OpenGalleryFileTree_CreateNodeComponentRunnable.m +com_codename1_impl_PaintSurface.m +com_codename1_impl_PointerDragActivation.m +com_codename1_impl_SQLStatementSplitter.m +com_codename1_impl_SQLText.m +com_codename1_impl_VirtualKeyboardInterface.m +com_codename1_impl_VisionImpl.m +com_codename1_impl_WebSocketEventSink.m +com_codename1_impl_WebSocketImpl.m +com_codename1_impl_WindowManager.m +com_codename1_impl_async_EdtResult.m +com_codename1_impl_async_EdtResult_1.m +com_codename1_impl_async_EdtResult_2.m +com_codename1_impl_async_EdtResult_Deliver.m +com_codename1_impl_async_OneShot.m +com_codename1_impl_async_PendingMap.m +com_codename1_impl_call_CallRequests.m +com_codename1_impl_call_CallWire.m +com_codename1_impl_gpu_GpuImplementation.m +com_codename1_impl_health_HealthWire.m +com_codename1_impl_home_CommissioningGateway.m +com_codename1_impl_home_HomeWire.m +com_codename1_impl_home_HomeWire_1.m +com_codename1_impl_home_SubscriptionState.m +com_codename1_impl_home_SubscriptionState_Deliver.m +com_codename1_impl_home_SubscriptionState_Flush.m +com_codename1_impl_ios_CatalystWindowNative.m +com_codename1_impl_ios_DatabaseImpl.m +com_codename1_impl_ios_DatabaseImpl_CursorImpl.m +com_codename1_impl_ios_IOSARImpl.m +com_codename1_impl_ios_IOSARImpl_CompleteOnEdt.m +com_codename1_impl_ios_IOSBiometrics.m +com_codename1_impl_ios_IOSBiometrics_1.m +com_codename1_impl_ios_IOSBiometrics_2.m +com_codename1_impl_ios_IOSBleAdvertisement.m +com_codename1_impl_ios_IOSBleAdvertisement_1.m +com_codename1_impl_ios_IOSBlePeripheral.m +com_codename1_impl_ios_IOSBluetooth.m +com_codename1_impl_ios_IOSBluetoothLE.m +com_codename1_impl_ios_IOSBluetooth_PendingAdvertise.m +com_codename1_impl_ios_IOSBluetooth_PendingL2capServer.m +com_codename1_impl_ios_IOSBluetooth_PendingServer.m +com_codename1_impl_ios_IOSCalendarSource.m +com_codename1_impl_ios_IOSCallBridge.m +com_codename1_impl_ios_IOSCallCallbacks.m +com_codename1_impl_ios_IOSCameraImpl.m +com_codename1_impl_ios_IOSCameraImpl_1.m +com_codename1_impl_ios_IOSCameraImpl_2.m +com_codename1_impl_ios_IOSCameraImpl_3.m +com_codename1_impl_ios_IOSCarBridge.m +com_codename1_impl_ios_IOSCarBridge_Counter.m +com_codename1_impl_ios_IOSCarPlayCallbacks.m +com_codename1_impl_ios_IOSCarPlayCallbacks_1.m +com_codename1_impl_ios_IOSConnectivity.m +com_codename1_impl_ios_IOSConnectivity_1.m +com_codename1_impl_ios_IOSConnectivity_2.m +com_codename1_impl_ios_IOSConnectivity_4.m +com_codename1_impl_ios_IOSConnectivity_5.m +com_codename1_impl_ios_IOSContinuityBridge.m +com_codename1_impl_ios_IOSContinuityCallbacks.m +com_codename1_impl_ios_IOSContinuityCallbacks_1.m +com_codename1_impl_ios_IOSDeviceIntegrity.m +com_codename1_impl_ios_IOSDeviceIntegrity_1.m +com_codename1_impl_ios_IOSDeviceIntegrity_2.m +com_codename1_impl_ios_IOSDeviceIntegrity_3.m +com_codename1_impl_ios_IOSDeviceIntegrity_OneShotResource.m +com_codename1_impl_ios_IOSDeviceIntegrity_PendingRequest.m +com_codename1_impl_ios_IOSDocumentProviderBridge.m +com_codename1_impl_ios_IOSGLSurface.m +com_codename1_impl_ios_IOSGattServer.m +com_codename1_impl_ios_IOSGattServer_IOSBleCentral.m +com_codename1_impl_ios_IOSGattServer_IOSGattReadRequest.m +com_codename1_impl_ios_IOSGattServer_IOSGattWriteRequest.m +com_codename1_impl_ios_IOSGraphicsDevice.m +com_codename1_impl_ios_IOSGraphicsDevice_1.m +com_codename1_impl_ios_IOSHealth.m +com_codename1_impl_ios_IOSHealthStore.m +com_codename1_impl_ios_IOSHealthStore_ChangeRead.m +com_codename1_impl_ios_IOSHealthStore_TiedInstantRead.m +com_codename1_impl_ios_IOSHealth_Complete.m +com_codename1_impl_ios_IOSHealth_Fail.m +com_codename1_impl_ios_IOSHealth_Forget.m +com_codename1_impl_ios_IOSHomeBridge.m +com_codename1_impl_ios_IOSHomeCallbacks.m +com_codename1_impl_ios_IOSImplementation.m +com_codename1_impl_ios_IOSImplementation_1.m +com_codename1_impl_ios_IOSImplementation_10.m +com_codename1_impl_ios_IOSImplementation_11.m +com_codename1_impl_ios_IOSImplementation_12.m +com_codename1_impl_ios_IOSImplementation_13.m +com_codename1_impl_ios_IOSImplementation_14.m +com_codename1_impl_ios_IOSImplementation_15.m +com_codename1_impl_ios_IOSImplementation_16.m +com_codename1_impl_ios_IOSImplementation_17.m +com_codename1_impl_ios_IOSImplementation_18.m +com_codename1_impl_ios_IOSImplementation_19.m +com_codename1_impl_ios_IOSImplementation_2.m +com_codename1_impl_ios_IOSImplementation_20.m +com_codename1_impl_ios_IOSImplementation_21.m +com_codename1_impl_ios_IOSImplementation_22.m +com_codename1_impl_ios_IOSImplementation_23.m +com_codename1_impl_ios_IOSImplementation_24.m +com_codename1_impl_ios_IOSImplementation_25.m +com_codename1_impl_ios_IOSImplementation_26.m +com_codename1_impl_ios_IOSImplementation_27.m +com_codename1_impl_ios_IOSImplementation_28.m +com_codename1_impl_ios_IOSImplementation_29.m +com_codename1_impl_ios_IOSImplementation_3.m +com_codename1_impl_ios_IOSImplementation_30.m +com_codename1_impl_ios_IOSImplementation_31.m +com_codename1_impl_ios_IOSImplementation_32.m +com_codename1_impl_ios_IOSImplementation_33.m +com_codename1_impl_ios_IOSImplementation_34.m +com_codename1_impl_ios_IOSImplementation_35.m +com_codename1_impl_ios_IOSImplementation_36.m +com_codename1_impl_ios_IOSImplementation_37.m +com_codename1_impl_ios_IOSImplementation_38.m +com_codename1_impl_ios_IOSImplementation_39.m +com_codename1_impl_ios_IOSImplementation_4.m +com_codename1_impl_ios_IOSImplementation_41.m +com_codename1_impl_ios_IOSImplementation_42.m +com_codename1_impl_ios_IOSImplementation_43.m +com_codename1_impl_ios_IOSImplementation_44.m +com_codename1_impl_ios_IOSImplementation_45.m +com_codename1_impl_ios_IOSImplementation_46.m +com_codename1_impl_ios_IOSImplementation_47.m +com_codename1_impl_ios_IOSImplementation_48.m +com_codename1_impl_ios_IOSImplementation_5.m +com_codename1_impl_ios_IOSImplementation_51.m +com_codename1_impl_ios_IOSImplementation_52.m +com_codename1_impl_ios_IOSImplementation_53.m +com_codename1_impl_ios_IOSImplementation_54.m +com_codename1_impl_ios_IOSImplementation_54_1.m +com_codename1_impl_ios_IOSImplementation_55.m +com_codename1_impl_ios_IOSImplementation_56.m +com_codename1_impl_ios_IOSImplementation_57.m +com_codename1_impl_ios_IOSImplementation_58.m +com_codename1_impl_ios_IOSImplementation_59.m +com_codename1_impl_ios_IOSImplementation_6.m +com_codename1_impl_ios_IOSImplementation_60.m +com_codename1_impl_ios_IOSImplementation_61.m +com_codename1_impl_ios_IOSImplementation_63.m +com_codename1_impl_ios_IOSImplementation_64.m +com_codename1_impl_ios_IOSImplementation_65.m +com_codename1_impl_ios_IOSImplementation_66.m +com_codename1_impl_ios_IOSImplementation_67.m +com_codename1_impl_ios_IOSImplementation_7.m +com_codename1_impl_ios_IOSImplementation_70.m +com_codename1_impl_ios_IOSImplementation_71.m +com_codename1_impl_ios_IOSImplementation_72.m +com_codename1_impl_ios_IOSImplementation_73.m +com_codename1_impl_ios_IOSImplementation_74.m +com_codename1_impl_ios_IOSImplementation_75.m +com_codename1_impl_ios_IOSImplementation_75_1.m +com_codename1_impl_ios_IOSImplementation_76.m +com_codename1_impl_ios_IOSImplementation_77.m +com_codename1_impl_ios_IOSImplementation_78.m +com_codename1_impl_ios_IOSImplementation_79.m +com_codename1_impl_ios_IOSImplementation_7_1.m +com_codename1_impl_ios_IOSImplementation_8.m +com_codename1_impl_ios_IOSImplementation_80.m +com_codename1_impl_ios_IOSImplementation_81.m +com_codename1_impl_ios_IOSImplementation_82.m +com_codename1_impl_ios_IOSImplementation_83.m +com_codename1_impl_ios_IOSImplementation_84.m +com_codename1_impl_ios_IOSImplementation_85.m +com_codename1_impl_ios_IOSImplementation_86.m +com_codename1_impl_ios_IOSImplementation_87.m +com_codename1_impl_ios_IOSImplementation_88.m +com_codename1_impl_ios_IOSImplementation_89.m +com_codename1_impl_ios_IOSImplementation_8_1.m +com_codename1_impl_ios_IOSImplementation_9.m +com_codename1_impl_ios_IOSImplementation_90.m +com_codename1_impl_ios_IOSImplementation_92.m +com_codename1_impl_ios_IOSImplementation_93.m +com_codename1_impl_ios_IOSImplementation_94.m +com_codename1_impl_ios_IOSImplementation_95.m +com_codename1_impl_ios_IOSImplementation_96.m +com_codename1_impl_ios_IOSImplementation_97.m +com_codename1_impl_ios_IOSImplementation_ClipShape.m +com_codename1_impl_ios_IOSImplementation_CodeScannerImpl.m +com_codename1_impl_ios_IOSImplementation_ExportedDrag.m +com_codename1_impl_ios_IOSImplementation_FileBackedOutputStream.m +com_codename1_impl_ios_IOSImplementation_FontStringCache.m +com_codename1_impl_ios_IOSImplementation_GlobalGraphics.m +com_codename1_impl_ios_IOSImplementation_Gradient.m +com_codename1_impl_ios_IOSImplementation_IOSMedia.m +com_codename1_impl_ios_IOSImplementation_IOSMediaCallback.m +com_codename1_impl_ios_IOSImplementation_IOSMedia_1.m +com_codename1_impl_ios_IOSImplementation_IOSMedia_2.m +com_codename1_impl_ios_IOSImplementation_IOSMedia_3.m +com_codename1_impl_ios_IOSImplementation_IOSMedia_4.m +com_codename1_impl_ios_IOSImplementation_IOSVideoReader.m +com_codename1_impl_ios_IOSImplementation_IOSVideoWriter.m +com_codename1_impl_ios_IOSImplementation_Loc.m +com_codename1_impl_ios_IOSImplementation_MacCaptureRequest.m +com_codename1_impl_ios_IOSImplementation_NativeFont.m +com_codename1_impl_ios_IOSImplementation_NativeGraphics.m +com_codename1_impl_ios_IOSImplementation_NativeIPhoneView.m +com_codename1_impl_ios_IOSImplementation_NativeImage.m +com_codename1_impl_ios_IOSImplementation_NativePathConsumer.m +com_codename1_impl_ios_IOSImplementation_NativePathRenderer.m +com_codename1_impl_ios_IOSImplementation_NativePathStroker.m +com_codename1_impl_ios_IOSImplementation_NetworkConnection.m +com_codename1_impl_ios_IOSImplementation_Paint.m +com_codename1_impl_ios_IOSImplementation_PendingPush.m +com_codename1_impl_ios_IOSImplementation_RadialGradient.m +com_codename1_impl_ios_IOSImplementation_TextureAlphaMask.m +com_codename1_impl_ios_IOSImplementation_TextureAlphaMaskProxy.m +com_codename1_impl_ios_IOSImplementation_TextureCache.m +com_codename1_impl_ios_IOSImplementation_TiGeometryOp.m +com_codename1_impl_ios_IOSInferenceImpl.m +com_codename1_impl_ios_IOSInferenceImpl_1.m +com_codename1_impl_ios_IOSInferenceImpl_1_1.m +com_codename1_impl_ios_IOSInferenceImpl_3.m +com_codename1_impl_ios_IOSInferenceImpl_Handle.m +com_codename1_impl_ios_IOSIntentBridge.m +com_codename1_impl_ios_IOSIntentCallbacks.m +com_codename1_impl_ios_IOSIntentCallbacks_1.m +com_codename1_impl_ios_IOSIntentCallbacks_InvocationWaiter.m +com_codename1_impl_ios_IOSIntentCallbacks_WindowWaiter.m +com_codename1_impl_ios_IOSL2capChannel.m +com_codename1_impl_ios_IOSL2capChannel_1.m +com_codename1_impl_ios_IOSL2capChannel_2.m +com_codename1_impl_ios_IOSL2capServer.m +com_codename1_impl_ios_IOSLanguageImpl.m +com_codename1_impl_ios_IOSLanguageImpl_1.m +com_codename1_impl_ios_IOSLanguageImpl_2.m +com_codename1_impl_ios_IOSLanguageImpl_3.m +com_codename1_impl_ios_IOSLanguageImpl_4.m +com_codename1_impl_ios_IOSLanguageImpl_4_1.m +com_codename1_impl_ios_IOSLanguageImpl_4_2.m +com_codename1_impl_ios_IOSLanguageImpl_NativeCall.m +com_codename1_impl_ios_IOSMetalShaderGenerator.m +com_codename1_impl_ios_IOSMotionSensorManager.m +com_codename1_impl_ios_IOSNative.m +com_codename1_impl_ios_IOSNearbyBridge.m +com_codename1_impl_ios_IOSNearbyCallbacks.m +com_codename1_impl_ios_IOSNetworkTypePlatform.m +com_codename1_impl_ios_IOSNfc.m +com_codename1_impl_ios_IOSNfc_1.m +com_codename1_impl_ios_IOSNfc_2.m +com_codename1_impl_ios_IOSNfc_3.m +com_codename1_impl_ios_IOSNfc_4.m +com_codename1_impl_ios_IOSNfc_5.m +com_codename1_impl_ios_IOSNfc_6.m +com_codename1_impl_ios_IOSNfc_7.m +com_codename1_impl_ios_IOSNfc_IOSIsoDep.m +com_codename1_impl_ios_IOSNfc_IOSTag.m +com_codename1_impl_ios_IOSSecureStorage.m +com_codename1_impl_ios_IOSSecureStorage_1.m +com_codename1_impl_ios_IOSSecureStorage_2.m +com_codename1_impl_ios_IOSSecureStorage_3.m +com_codename1_impl_ios_IOSSimd.m +com_codename1_impl_ios_IOSSurfaceBridge.m +com_codename1_impl_ios_IOSSurfaceCallbacks.m +com_codename1_impl_ios_IOSVideoCaptureConstraintsCompiler.m +com_codename1_impl_ios_IOSVirtualKeyboard.m +com_codename1_impl_ios_IOSVisionImpl.m +com_codename1_impl_ios_IOSVisionImpl_1.m +com_codename1_impl_ios_IOSVisionImpl_1_1.m +com_codename1_impl_ios_IOSVisionImpl_1_2.m +com_codename1_impl_ios_IOSVisionImpl_2.m +com_codename1_impl_ios_IOSVpnBridge.m +com_codename1_impl_ios_IOSWearableBridge.m +com_codename1_impl_ios_IOSWearableBridge_DroppedDelivery.m +com_codename1_impl_ios_IOSWearableCallbacks.m +com_codename1_impl_ios_IOSWearableCallbacks_1.m +com_codename1_impl_ios_IOSWearableCallbacks_2.m +com_codename1_impl_ios_IOSWearableCallbacks_2_1.m +com_codename1_impl_ios_IOSWebSocketImpl.m +com_codename1_impl_ios_Lifecycle.m +com_codename1_impl_ios_MacWindowManager.m +com_codename1_impl_ios_MacWindowManager_Peer.m +com_codename1_impl_ios_Matrix.m +com_codename1_impl_ios_Matrix_1.m +com_codename1_impl_ios_Matrix_Factory.m +com_codename1_impl_ios_Matrix_MatrixUtil.m +com_codename1_impl_ios_NSDataInputStream.m +com_codename1_impl_ios_NSDataOutputStream.m +com_codename1_impl_ios_NSFileInputStream.m +com_codename1_impl_ios_TextEditUtil.m +com_codename1_impl_ios_TextEditUtil_1.m +com_codename1_impl_ios_ZoozPurchase.m +com_codename1_impl_ios_ZoozPurchase_2.m +com_codename1_impl_nearby_NearbyRequests.m +com_codename1_impl_nearby_NearbyWire.m +com_codename1_impl_time_TimeZoneSupport.m +com_codename1_impl_vpn_VpnRequests.m +com_codename1_impl_vpn_VpnWire.m +com_codename1_intents_AppEntity.m +com_codename1_intents_DynamicIntent.m +com_codename1_intents_EntitySelectionHandler.m +com_codename1_intents_Exposure.m +com_codename1_intents_IntentCompletion.m +com_codename1_intents_IntentContext.m +com_codename1_intents_IntentDates.m +com_codename1_intents_IntentDeclaration.m +com_codename1_intents_IntentDispatcher.m +com_codename1_intents_IntentParameterInfo.m +com_codename1_intents_IntentParameterType.m +com_codename1_intents_IntentResult.m +com_codename1_intents_IntentSerializer.m +com_codename1_intents_IntentSource.m +com_codename1_intents_IntentText.m +com_codename1_intents_Intents.m +com_codename1_intents_Intents_1.m +com_codename1_intents_Intents_2.m +com_codename1_intents_Intents_3.m +com_codename1_intents_Intents_4.m +com_codename1_intents_Intents_5.m +com_codename1_intents_Intents_CompletionGuard.m +com_codename1_intents_Intents_Outcome.m +com_codename1_intents_Intents_PendingActivity.m +com_codename1_intents_Intents_PendingInvocation.m +com_codename1_intents_Intents_SelectionWaiter.m +com_codename1_intents_Intents_ToolCompletion.m +com_codename1_intents_generated_IntentRegistry.m +com_codename1_intents_spi_IntentBridge.m +com_codename1_io_BufferedInputStream.m +com_codename1_io_BufferedOutputStream.m +com_codename1_io_CacheMap.m +com_codename1_io_CharArrayReader.m +com_codename1_io_ConnectionRequest.m +com_codename1_io_ConnectionRequest_2.m +com_codename1_io_ConnectionRequest_3.m +com_codename1_io_ConnectionRequest_4.m +com_codename1_io_ConnectionRequest_CachingMode.m +com_codename1_io_ConnectionRequest_SSLCertificate.m +com_codename1_io_Cookie.m +com_codename1_io_Data.m +com_codename1_io_Externalizable.m +com_codename1_io_File.m +com_codename1_io_FileSystemStorage.m +com_codename1_io_FileSystemStorage_1.m +com_codename1_io_IOProgressListener.m +com_codename1_io_JSONParseCallback.m +com_codename1_io_JSONParser.m +com_codename1_io_JSONParser_1.m +com_codename1_io_JSONParser_KeyStack.m +com_codename1_io_JSONParser_RawJson.m +com_codename1_io_JSONParser_ReaderClass.m +com_codename1_io_JSONSanitizer.m +com_codename1_io_JSONSanitizer_1.m +com_codename1_io_JSONSanitizer_State.m +com_codename1_io_JSONSanitizer_UnbracketedComma.m +com_codename1_io_JSONWriter.m +com_codename1_io_JSONWriter_ArrayBuilder.m +com_codename1_io_JSONWriter_ObjectBuilder.m +com_codename1_io_Log.m +com_codename1_io_Log_1.m +com_codename1_io_MultipartRequest.m +com_codename1_io_NetworkEvent.m +com_codename1_io_NetworkGuard.m +com_codename1_io_NetworkManager.m +com_codename1_io_NetworkManager_1.m +com_codename1_io_NetworkManager_2WaitingClass.m +com_codename1_io_NetworkManager_AutoDetectAPN.m +com_codename1_io_NetworkManager_NetworkThread.m +com_codename1_io_NetworkManager_NetworkThread_1.m +com_codename1_io_NetworkTypeListener.m +com_codename1_io_NetworkTypePlatform.m +com_codename1_io_PreferenceListener.m +com_codename1_io_Preferences.m +com_codename1_io_Storage.m +com_codename1_io_URL.m +com_codename1_io_Util.m +com_codename1_io_Util_UUID.m +com_codename1_io_WebSocket.m +com_codename1_io_WebSocketState.m +com_codename1_io_WebSocket_1.m +com_codename1_io_WebSocket_BinaryHandler.m +com_codename1_io_WebSocket_CloseHandler.m +com_codename1_io_WebSocket_ConnectHandler.m +com_codename1_io_WebSocket_ErrorHandler.m +com_codename1_io_WebSocket_TextHandler.m +com_codename1_io_bonjour_BonjourPlatform.m +com_codename1_io_bonjour_BonjourService.m +com_codename1_io_bonjour_BonjourServiceListener.m +com_codename1_io_grpc_ProtoReader.m +com_codename1_io_gzip_Adler32.m +com_codename1_io_gzip_CRC32.m +com_codename1_io_gzip_Checksum.m +com_codename1_io_gzip_Deflate.m +com_codename1_io_gzip_Deflate_Config.m +com_codename1_io_gzip_FilterInputStream.m +com_codename1_io_gzip_GZIPException.m +com_codename1_io_gzip_GZIPHeader.m +com_codename1_io_gzip_GZIPInputStream.m +com_codename1_io_gzip_InfBlocks.m +com_codename1_io_gzip_InfCodes.m +com_codename1_io_gzip_InfTree.m +com_codename1_io_gzip_Inflate.m +com_codename1_io_gzip_Inflate_Return.m +com_codename1_io_gzip_Inflater.m +com_codename1_io_gzip_InflaterInputStream.m +com_codename1_io_gzip_JZlib.m +com_codename1_io_gzip_JZlib_ANY.m +com_codename1_io_gzip_JZlib_GZIP.m +com_codename1_io_gzip_JZlib_NONE.m +com_codename1_io_gzip_JZlib_WrapperType.m +com_codename1_io_gzip_JZlib_ZLIB.m +com_codename1_io_gzip_StaticTree.m +com_codename1_io_gzip_Tree.m +com_codename1_io_gzip_ZStream.m +com_codename1_io_tar_Octal.m +com_codename1_io_tar_TarEntry.m +com_codename1_io_tar_TarHeader.m +com_codename1_io_tar_TarInputStream.m +com_codename1_io_usb_UsbPlatform.m +com_codename1_io_wifi_WiFiConnectCallback.m +com_codename1_io_wifi_WifiDirectPlatform.m +com_codename1_io_wifi_WifiPlatform.m +com_codename1_l10n_DateFormat.m +com_codename1_l10n_DateFormatSymbols.m +com_codename1_l10n_Format.m +com_codename1_l10n_L10NManager.m +com_codename1_l10n_ParseException.m +com_codename1_l10n_SimpleDateFormat.m +com_codename1_l10n_SimpleDateFormat_1.m +com_codename1_l10n_SimpleDateFormat_TimeZoneResult.m +com_codename1_location_Geofence.m +com_codename1_location_GeofenceListener.m +com_codename1_location_Location.m +com_codename1_location_LocationListener.m +com_codename1_location_LocationManager.m +com_codename1_location_LocationRequest.m +com_codename1_maps_CameraChangeListener.m +com_codename1_maps_CameraPosition.m +com_codename1_maps_Circle.m +com_codename1_maps_LatLng.m +com_codename1_maps_MapBounds.m +com_codename1_maps_MapObject.m +com_codename1_maps_MapProviderImpl.m +com_codename1_maps_MapSurface.m +com_codename1_maps_MapTapListener.m +com_codename1_maps_MapView.m +com_codename1_maps_MapView_1.m +com_codename1_maps_Marker.m +com_codename1_maps_MarkerOptions.m +com_codename1_maps_NativeMap.m +com_codename1_maps_NativeMap_1.m +com_codename1_maps_Polygon.m +com_codename1_maps_Polyline.m +com_codename1_maps_WebMapProvider.m +com_codename1_maps_WebMapProvider_1.m +com_codename1_maps_WebMapProvider_1_1.m +com_codename1_maps_spi_MapProvider.m +com_codename1_maps_spi_MapProviderRegistry.m +com_codename1_maps_vector_BundledTileSource.m +com_codename1_maps_vector_BundledTileSource_1.m +com_codename1_maps_vector_BundledTileSource_1_1.m +com_codename1_maps_vector_HttpTileSource.m +com_codename1_maps_vector_HttpTileSource_1.m +com_codename1_maps_vector_HttpTileSource_1_1.m +com_codename1_maps_vector_HttpTileSource_1_1_1.m +com_codename1_maps_vector_HttpTileSource_1_2.m +com_codename1_maps_vector_HttpTileSource_1_3.m +com_codename1_maps_vector_HttpTileSource_TileRequest.m +com_codename1_maps_vector_HttpTileSource_TileRequest_1.m +com_codename1_maps_vector_HttpTileSource_TileRequest_1_1.m +com_codename1_maps_vector_HttpTileSource_TileRequest_1_2.m +com_codename1_maps_vector_HttpTileSource_TileRequest_2.m +com_codename1_maps_vector_HttpTileSource_TileRequest_3.m +com_codename1_maps_vector_IntArray.m +com_codename1_maps_vector_LabelCandidate.m +com_codename1_maps_vector_LabelEngine.m +com_codename1_maps_vector_MapStyle.m +com_codename1_maps_vector_MapTileWorker.m +com_codename1_maps_vector_MvtDecoder.m +com_codename1_maps_vector_MvtTileSource.m +com_codename1_maps_vector_StyleLayer.m +com_codename1_maps_vector_TileCache.m +com_codename1_maps_vector_TileCallback.m +com_codename1_maps_vector_TileRenderer.m +com_codename1_maps_vector_TileSource.m +com_codename1_maps_vector_TileUtil.m +com_codename1_maps_vector_VectorFeature.m +com_codename1_maps_vector_VectorLayer.m +com_codename1_maps_vector_VectorMapEngine.m +com_codename1_maps_vector_VectorMapEngine_1.m +com_codename1_maps_vector_VectorMapEngine_2.m +com_codename1_maps_vector_VectorMapEngine_2_1.m +com_codename1_maps_vector_VectorMapEngine_TileResult.m +com_codename1_maps_vector_VectorTile.m +com_codename1_maps_vector_WebMercator.m +com_codename1_maps_vector_ZoomValue.m +com_codename1_media_AbstractMedia.m +com_codename1_media_AbstractMedia_1.m +com_codename1_media_AbstractMedia_1StateChangeListener.m +com_codename1_media_AbstractMedia_2.m +com_codename1_media_AbstractMedia_2StateChangeListener.m +com_codename1_media_AbstractMedia_3.m +com_codename1_media_AbstractMedia_4.m +com_codename1_media_AbstractMedia_5.m +com_codename1_media_AbstractMedia_6.m +com_codename1_media_AbstractMedia_7.m +com_codename1_media_AbstractMedia_8.m +com_codename1_media_AbstractMedia_PauseAsyncExceptSuccessCallback.m +com_codename1_media_AbstractMedia_PauseAsyncSuccessCallback.m +com_codename1_media_AbstractMedia_PlayAsyncExceptSuccessCallback.m +com_codename1_media_AbstractMedia_PlayAsyncSuccessCallback.m +com_codename1_media_AsyncMedia.m +com_codename1_media_AsyncMedia_MediaErrorEvent.m +com_codename1_media_AsyncMedia_MediaErrorType.m +com_codename1_media_AsyncMedia_MediaException.m +com_codename1_media_AsyncMedia_MediaStateChangeEvent.m +com_codename1_media_AsyncMedia_PauseRequest.m +com_codename1_media_AsyncMedia_PlayRequest.m +com_codename1_media_AsyncMedia_State.m +com_codename1_media_AudioBuffer.m +com_codename1_media_AudioBuffer_AudioBufferCallback.m +com_codename1_media_AudioEffects.m +com_codename1_media_AudioMixer.m +com_codename1_media_AudioMixer_Track.m +com_codename1_media_Media.m +com_codename1_media_MediaManager.m +com_codename1_media_MediaRecorderBuilder.m +com_codename1_media_RemoteControlListener.m +com_codename1_media_VideoCodec.m +com_codename1_media_VideoFrame.m +com_codename1_media_VideoIO.m +com_codename1_media_VideoIO_SpooledVideoReader.m +com_codename1_media_VideoReader.m +com_codename1_media_VideoReader_FrameCallback.m +com_codename1_media_VideoWriter.m +com_codename1_media_VideoWriterBuilder.m +com_codename1_media_WAVWriter.m +com_codename1_messaging_Message.m +com_codename1_nearby_NearbyError.m +com_codename1_nearby_NearbyException.m +com_codename1_nearby_companion_CompanionDevice.m +com_codename1_nearby_companion_CompanionDevices.m +com_codename1_nearby_companion_CompanionDevices_1.m +com_codename1_nearby_companion_CompanionDevices_2.m +com_codename1_nearby_companion_CompanionDevices_PendingPresence.m +com_codename1_nearby_companion_CompanionProfile.m +com_codename1_nearby_companion_PresenceListener.m +com_codename1_nearby_ranging_Ranging.m +com_codename1_nearby_ranging_RangingListener.m +com_codename1_nearby_ranging_RangingRemovalReason.m +com_codename1_nearby_ranging_RangingRole.m +com_codename1_nearby_ranging_RangingSession.m +com_codename1_nearby_ranging_RangingSession_1.m +com_codename1_nearby_ranging_RangingSession_2.m +com_codename1_nearby_ranging_RangingSession_3.m +com_codename1_nearby_ranging_RangingSession_4.m +com_codename1_nearby_ranging_RangingSession_5.m +com_codename1_nearby_ranging_RangingToken.m +com_codename1_nearby_ranging_RangingUpdate.m +com_codename1_nearby_spi_NearbyBridge.m +com_codename1_nearby_transport_Endpoint.m +com_codename1_nearby_transport_IncomingConnection.m +com_codename1_nearby_transport_NearbyTransport.m +com_codename1_nearby_transport_NearbyTransport_1.m +com_codename1_nearby_transport_NearbyTransport_2.m +com_codename1_nearby_transport_NearbyTransport_3.m +com_codename1_nearby_transport_NearbyTransport_4.m +com_codename1_nearby_transport_NearbyTransport_5.m +com_codename1_nearby_transport_NearbyTransport_6.m +com_codename1_nearby_transport_NearbyTransport_7.m +com_codename1_nearby_transport_Payload.m +com_codename1_nearby_transport_PayloadStatus.m +com_codename1_nearby_transport_PayloadTransferUpdate.m +com_codename1_nearby_transport_TransportListener.m +com_codename1_nfc_ApduResponse.m +com_codename1_nfc_HostCardEmulationService.m +com_codename1_nfc_IsoDep.m +com_codename1_nfc_NdefMessage.m +com_codename1_nfc_NdefRecord.m +com_codename1_nfc_Nfc.m +com_codename1_nfc_NfcError.m +com_codename1_nfc_NfcException.m +com_codename1_nfc_Tag.m +com_codename1_nfc_TagTechnology.m +com_codename1_nfc_TagType.m +com_codename1_notifications_LocalNotification.m +com_codename1_notifications_LocalNotificationCallback.m +com_codename1_notifications_LocalNotification_Action.m +com_codename1_notifications_LocalNotification_MessagingStyle.m +com_codename1_notifications_NotificationChannelBuilder.m +com_codename1_notifications_NotificationPermissionCallback.m +com_codename1_notifications_NotificationPermissionResult.m +com_codename1_notifications_NotificationPermissionResult_AuthorizationLevel.m +com_codename1_payment_ApplePromotionalOffer.m +com_codename1_payment_Product.m +com_codename1_payment_PromotionalOffer.m +com_codename1_payment_Purchase.m +com_codename1_payment_PurchaseCallback.m +com_codename1_payment_Purchase_1.m +com_codename1_payment_Purchase_10.m +com_codename1_payment_Purchase_11.m +com_codename1_payment_Purchase_11_1.m +com_codename1_payment_Purchase_2.m +com_codename1_payment_Purchase_3.m +com_codename1_payment_Purchase_4.m +com_codename1_payment_Purchase_5.m +com_codename1_payment_Purchase_6.m +com_codename1_payment_Purchase_7.m +com_codename1_payment_Purchase_8.m +com_codename1_payment_Purchase_9.m +com_codename1_payment_Receipt.m +com_codename1_payment_ReceiptStore.m +com_codename1_payment_RestoreCallback.m +com_codename1_plugin_Plugin.m +com_codename1_plugin_PluginSupport.m +com_codename1_plugin_event_IsGalleryTypeSupportedEvent.m +com_codename1_plugin_event_OpenGalleryEvent.m +com_codename1_plugin_event_PluginEvent.m +com_codename1_printing_PrintResult.m +com_codename1_printing_PrintResultListener.m +com_codename1_processing_AbstractEvaluator.m +com_codename1_processing_AttributeEvaluator.m +com_codename1_processing_ContainsEvaluator.m +com_codename1_processing_Evaluator.m +com_codename1_processing_EvaluatorFactory.m +com_codename1_processing_IndexEvaluator.m +com_codename1_processing_JSONContent.m +com_codename1_processing_MapContent.m +com_codename1_processing_PrettyPrinter.m +com_codename1_processing_Result.m +com_codename1_processing_ResultTokenizer.m +com_codename1_processing_StructuredContent.m +com_codename1_processing_SubContent.m +com_codename1_processing_TextEvaluator.m +com_codename1_processing_XMLContent.m +com_codename1_properties_BooleanProperty.m +com_codename1_properties_CollectionProperty.m +com_codename1_properties_DoubleProperty.m +com_codename1_properties_FloatProperty.m +com_codename1_properties_IntProperty.m +com_codename1_properties_LongProperty.m +com_codename1_properties_MapAdapter.m +com_codename1_properties_MapProperty.m +com_codename1_properties_NumericProperty.m +com_codename1_properties_Property.m +com_codename1_properties_PropertyBase.m +com_codename1_properties_PropertyBusinessObject.m +com_codename1_properties_PropertyChangeListener.m +com_codename1_properties_PropertyIndex.m +com_codename1_properties_PropertyIndex_1.m +com_codename1_properties_PropertyIndex_2.m +com_codename1_push_PushAction.m +com_codename1_push_PushActionCategory.m +com_codename1_push_PushActionsProvider.m +com_codename1_push_PushCallback.m +com_codename1_push_PushClient.m +com_codename1_push_PushClient_1.m +com_codename1_push_PushClient_2.m +com_codename1_push_PushClient_3.m +com_codename1_push_PushClient_4.m +com_codename1_push_PushClient_5.m +com_codename1_push_PushClient_Builder.m +com_codename1_push_PushClient_CompatibilityCallback.m +com_codename1_push_PushClient_ManagedUnregisterRequest.m +com_codename1_push_PushClient_TransportCallback.m +com_codename1_push_PushContent.m +com_codename1_push_PushError.m +com_codename1_push_PushListener.m +com_codename1_push_PushMessage.m +com_codename1_push_PushMessage_1.m +com_codename1_push_PushRegistrationSink.m +com_codename1_push_PushSubscription.m +com_codename1_push_PushTransport.m +com_codename1_push_PushTransport_Callback.m +com_codename1_router_Navigation.m +com_codename1_router_NavigationEntry.m +com_codename1_router_Navigation_1.m +com_codename1_router_PopGuard.m +com_codename1_router_PopReason.m +com_codename1_router_RouteDispatcher.m +com_codename1_security_Base32.m +com_codename1_security_BiometricError.m +com_codename1_security_BiometricException.m +com_codename1_security_Biometrics.m +com_codename1_security_Cipher.m +com_codename1_security_CryptoException.m +com_codename1_security_Hash.m +com_codename1_security_Hmac.m +com_codename1_security_Jwt.m +com_codename1_security_Key.m +com_codename1_security_KeyGenerator.m +com_codename1_security_KeyPair.m +com_codename1_security_MessageDigestImpl.m +com_codename1_security_MessageDigestImpl_Block64.m +com_codename1_security_MessageDigestImpl_Md5.m +com_codename1_security_MessageDigestImpl_Sha1.m +com_codename1_security_MessageDigestImpl_Sha256Family.m +com_codename1_security_MessageDigestImpl_Sha512Family.m +com_codename1_security_Otp.m +com_codename1_security_PrivateKey.m +com_codename1_security_PublicKey.m +com_codename1_security_SecretKey.m +com_codename1_security_SecureRandom.m +com_codename1_security_SecureStorage.m +com_codename1_security_Signature.m +com_codename1_security_TapjackingPolicy.m +com_codename1_sensors_GestureEngine.m +com_codename1_sensors_GestureEvent.m +com_codename1_sensors_GestureListener.m +com_codename1_sensors_MotionEvent.m +com_codename1_sensors_MotionSensor.m +com_codename1_sensors_MotionSensorListener.m +com_codename1_sensors_MotionSensorManager.m +com_codename1_sensors_MotionSensorManager_1.m +com_codename1_sensors_MotionSensorManager_DispatchGesture.m +com_codename1_sensors_MotionSensor_DispatchEvent.m +com_codename1_sensors_UnsupportedMotionSensorManager.m +com_codename1_share_ShareResult.m +com_codename1_share_ShareResultListener.m +com_codename1_share_SharedContent.m +com_codename1_share_SharedContent_1.m +com_codename1_share_SharedContent_Builder.m +com_codename1_share_SharedContent_Item.m +com_codename1_social_LoginCallback.m +com_codename1_surfaces_LiveActivity.m +com_codename1_surfaces_LiveActivityDescriptor.m +com_codename1_surfaces_SurfaceActionEvent.m +com_codename1_surfaces_SurfaceActionHandler.m +com_codename1_surfaces_SurfaceAlignment.m +com_codename1_surfaces_SurfaceBox.m +com_codename1_surfaces_SurfaceColor.m +com_codename1_surfaces_SurfaceColumn.m +com_codename1_surfaces_SurfaceContainer.m +com_codename1_surfaces_SurfaceDiagnostics.m +com_codename1_surfaces_SurfaceDynamicText.m +com_codename1_surfaces_SurfaceFontWeight.m +com_codename1_surfaces_SurfaceImage.m +com_codename1_surfaces_SurfaceNode.m +com_codename1_surfaces_SurfaceProgress.m +com_codename1_surfaces_SurfaceRasterizer.m +com_codename1_surfaces_SurfaceRasterizer_1.m +com_codename1_surfaces_SurfaceRasterizer_ActionRect.m +com_codename1_surfaces_SurfaceRasterizer_LNode.m +com_codename1_surfaces_SurfaceRasterizer_Result.m +com_codename1_surfaces_SurfaceRow.m +com_codename1_surfaces_SurfaceSerializer.m +com_codename1_surfaces_SurfaceSpacer.m +com_codename1_surfaces_SurfaceText.m +com_codename1_surfaces_SurfaceVector.m +com_codename1_surfaces_Surfaces.m +com_codename1_surfaces_Surfaces_1.m +com_codename1_surfaces_WidgetKind.m +com_codename1_surfaces_WidgetSize.m +com_codename1_surfaces_WidgetTimeline.m +com_codename1_surfaces_WidgetTimeline_Entry.m +com_codename1_surfaces_spi_SurfaceBridge.m +com_codename1_system_CrashReport.m +com_codename1_system_Lifecycle.m +com_codename1_system_Lifecycle_1.m +com_codename1_system_NativeInterface.m +com_codename1_system_NativeLookup.m +com_codename1_system_URLCallback.m +com_codename1_testing_AbstractTest.m +com_codename1_testing_DatabaseConformanceSuite.m +com_codename1_testing_DatabaseConformanceSuite_Reporter.m +com_codename1_testing_DeviceRunner.m +com_codename1_testing_TestReporting.m +com_codename1_testing_TestReporting_TestReportingHolder.m +com_codename1_testing_TestUtils.m +com_codename1_testing_TestUtils_2.m +com_codename1_testing_UnitTest.m +com_codename1_ui_AbstractDialog.m +com_codename1_ui_AbstractEditorComponent.m +com_codename1_ui_AbstractEditorComponent_1.m +com_codename1_ui_AbstractEditorComponent_2.m +com_codename1_ui_AbstractEditorComponent_3.m +com_codename1_ui_AbstractEditorComponent_4.m +com_codename1_ui_AccessibilityColorVisionDeficiency.m +com_codename1_ui_Accessor.m +com_codename1_ui_AnimationManager.m +com_codename1_ui_AnimationManager_1.m +com_codename1_ui_BlockingDisallowedException.m +com_codename1_ui_BrowserComponent.m +com_codename1_ui_BrowserComponent_1.m +com_codename1_ui_BrowserComponent_13.m +com_codename1_ui_BrowserComponent_14.m +com_codename1_ui_BrowserComponent_15.m +com_codename1_ui_BrowserComponent_16.m +com_codename1_ui_BrowserComponent_17.m +com_codename1_ui_BrowserComponent_18.m +com_codename1_ui_BrowserComponent_19.m +com_codename1_ui_BrowserComponent_2.m +com_codename1_ui_BrowserComponent_20.m +com_codename1_ui_BrowserComponent_21.m +com_codename1_ui_BrowserComponent_22.m +com_codename1_ui_BrowserComponent_23.m +com_codename1_ui_BrowserComponent_24.m +com_codename1_ui_BrowserComponent_25.m +com_codename1_ui_BrowserComponent_26.m +com_codename1_ui_BrowserComponent_27.m +com_codename1_ui_BrowserComponent_28.m +com_codename1_ui_BrowserComponent_3.m +com_codename1_ui_BrowserComponent_4.m +com_codename1_ui_BrowserComponent_5.m +com_codename1_ui_BrowserComponent_6.m +com_codename1_ui_BrowserComponent_7.m +com_codename1_ui_BrowserComponent_8.m +com_codename1_ui_BrowserComponent_AlwaysTrueShouldNavigateCallback.m +com_codename1_ui_BrowserComponent_FireNavigationCallbackRunnable.m +com_codename1_ui_BrowserComponent_JSExpression.m +com_codename1_ui_BrowserComponent_JSProxy.m +com_codename1_ui_BrowserComponent_JSRef.m +com_codename1_ui_BrowserComponent_JSType.m +com_codename1_ui_BrowserComponent_NavigationCallbackRunnable.m +com_codename1_ui_Button.m +com_codename1_ui_ButtonGroup.m +com_codename1_ui_Button_1.m +com_codename1_ui_CN.m +com_codename1_ui_CN1Constants.m +com_codename1_ui_CSSColor.m +com_codename1_ui_CSSGradientParser.m +com_codename1_ui_CSSGradientParser_Stops.m +com_codename1_ui_Calendar.m +com_codename1_ui_Calendar_1.m +com_codename1_ui_Calendar_MonthView.m +com_codename1_ui_CheckBox.m +com_codename1_ui_ClipboardContent.m +com_codename1_ui_ClipboardContent_LazyValue.m +com_codename1_ui_ClipboardDataProvider.m +com_codename1_ui_CodeCompletion.m +com_codename1_ui_CodeCompletionProvider.m +com_codename1_ui_CodeDiagnostic.m +com_codename1_ui_CodeEditor.m +com_codename1_ui_CodeEditor_1.m +com_codename1_ui_CodeEditor_1_1.m +com_codename1_ui_ComboBox.m +com_codename1_ui_ComboBox_1.m +com_codename1_ui_Command.m +com_codename1_ui_Command_1.m +com_codename1_ui_Component.m +com_codename1_ui_ComponentImage.m +com_codename1_ui_ComponentImage_EncodedWrapper.m +com_codename1_ui_ComponentSelector.m +com_codename1_ui_ComponentSelector_ComponentClosure.m +com_codename1_ui_ComponentSelector_Filter.m +com_codename1_ui_Component_1.m +com_codename1_ui_Component_1_1.m +com_codename1_ui_Component_2.m +com_codename1_ui_Component_3.m +com_codename1_ui_Component_4.m +com_codename1_ui_Component_5.m +com_codename1_ui_Component_6.m +com_codename1_ui_Component_7.m +com_codename1_ui_Component_8.m +com_codename1_ui_Component_AnimationTransitionPainter.m +com_codename1_ui_Component_BGPainter.m +com_codename1_ui_ConicGradient.m +com_codename1_ui_Container.m +com_codename1_ui_Container_1.m +com_codename1_ui_Container_2.m +com_codename1_ui_Container_3.m +com_codename1_ui_Container_4.m +com_codename1_ui_Container_5.m +com_codename1_ui_Container_MorphAnimation.m +com_codename1_ui_Container_QueuedChange.m +com_codename1_ui_Container_QueuedInsertion.m +com_codename1_ui_Container_QueuedRemoval.m +com_codename1_ui_Container_TmpInsets.m +com_codename1_ui_Container_TransitionAnimation.m +com_codename1_ui_CustomFont.m +com_codename1_ui_Desktop.m +com_codename1_ui_Desktop_1.m +com_codename1_ui_Desktop_WindowCallback.m +com_codename1_ui_DevicePosture.m +com_codename1_ui_Dialog.m +com_codename1_ui_Dialog_1.m +com_codename1_ui_Dialog_BlockingSleepRunnable.m +com_codename1_ui_Dialog_DialogScrim.m +com_codename1_ui_Dialog_HostBackListener.m +com_codename1_ui_Dialog_HostSizeListener.m +com_codename1_ui_Dialog_HostWindowListener.m +com_codename1_ui_Dialog_HostedKeyListener.m +com_codename1_ui_Dialog_NativeCloseBridge.m +com_codename1_ui_Dialog_NativeCommandBridge.m +com_codename1_ui_Dialog_NativeShowingEndedBridge.m +com_codename1_ui_Dialog_NoOpPainter.m +com_codename1_ui_Dialog_TimeoutClock.m +com_codename1_ui_Dialog_TimeoutSchedule.m +com_codename1_ui_Display.m +com_codename1_ui_Display_1.m +com_codename1_ui_Display_2.m +com_codename1_ui_Display_5.m +com_codename1_ui_Display_5_1.m +com_codename1_ui_Display_7.m +com_codename1_ui_Display_ContactPickCompletion.m +com_codename1_ui_Display_DebugRunnable.m +com_codename1_ui_Display_DeferredContactPick.m +com_codename1_ui_Display_EdtException.m +com_codename1_ui_Display_EmptyContactPick.m +com_codename1_ui_Editable.m +com_codename1_ui_ElevationComparator.m +com_codename1_ui_EncodedImage.m +com_codename1_ui_EncodedImage_1.m +com_codename1_ui_EncodedImage_1_1.m +com_codename1_ui_Font.m +com_codename1_ui_FontImage.m +com_codename1_ui_Form.m +com_codename1_ui_Form_1.m +com_codename1_ui_Form_2.m +com_codename1_ui_Form_CurrentlyEditingFilter.m +com_codename1_ui_Form_TabIterator.m +com_codename1_ui_Form_TabIteratorComparator.m +com_codename1_ui_Form_TabIteratorFilter.m +com_codename1_ui_Form_TransferredListener.m +com_codename1_ui_GeneratedSVGImage.m +com_codename1_ui_Gradient.m +com_codename1_ui_Graphics.m +com_codename1_ui_HeavyButton.m +com_codename1_ui_IconHolder.m +com_codename1_ui_Image.m +com_codename1_ui_ImageFactory.m +com_codename1_ui_ImageFactory_1.m +com_codename1_ui_IndexedImage.m +com_codename1_ui_InputComponent.m +com_codename1_ui_InputComponent_1.m +com_codename1_ui_InputComponent_ErrorLabelTextArea.m +com_codename1_ui_InputComponent_LabelButton.m +com_codename1_ui_InterFormContainer.m +com_codename1_ui_Label.m +com_codename1_ui_Label_1.m +com_codename1_ui_Label_2.m +com_codename1_ui_LeadUtil.m +com_codename1_ui_LinearGradient.m +com_codename1_ui_LinearGradientPaint.m +com_codename1_ui_LinearGradientPaint_1.m +com_codename1_ui_List.m +com_codename1_ui_List_1.m +com_codename1_ui_List_Listeners.m +com_codename1_ui_MenuBar.m +com_codename1_ui_MenuBar_1.m +com_codename1_ui_MenuBar_MenuDisposerActionListener.m +com_codename1_ui_Monitor.m +com_codename1_ui_MultipleGradientPaint.m +com_codename1_ui_MultipleGradientPaint_ColorSpaceType.m +com_codename1_ui_MultipleGradientPaint_CycleMethod.m +com_codename1_ui_NativeDragAndDrop.m +com_codename1_ui_NativeDragAndDrop_1.m +com_codename1_ui_NativeDragAndDrop_2.m +com_codename1_ui_NativeDragAndDrop_3.m +com_codename1_ui_NativeDragAndDrop_4.m +com_codename1_ui_NativeDragOperation.m +com_codename1_ui_NativeDropEvent.m +com_codename1_ui_NavigationCommand.m +com_codename1_ui_Paint.m +com_codename1_ui_Painter.m +com_codename1_ui_PeerComponent.m +com_codename1_ui_PickerComponent.m +com_codename1_ui_PointerDragHistory.m +com_codename1_ui_RGBImage.m +com_codename1_ui_RadialGradient.m +com_codename1_ui_RadioButton.m +com_codename1_ui_RefreshThemeCallback.m +com_codename1_ui_RefreshThemeRunnable.m +com_codename1_ui_ReleasableComponent.m +com_codename1_ui_RichTextArea.m +com_codename1_ui_RichTextClipboardData.m +com_codename1_ui_RichTextFormat.m +com_codename1_ui_RunnableWrapper.m +com_codename1_ui_SVGScaledView.m +com_codename1_ui_SelectableIconHolder.m +com_codename1_ui_Sheet.m +com_codename1_ui_Sheet_1.m +com_codename1_ui_Sheet_10.m +com_codename1_ui_Sheet_2.m +com_codename1_ui_Sheet_3.m +com_codename1_ui_Sheet_4.m +com_codename1_ui_Sheet_5.m +com_codename1_ui_Sheet_6.m +com_codename1_ui_Sheet_7.m +com_codename1_ui_Sheet_8.m +com_codename1_ui_Sheet_9.m +com_codename1_ui_Sheet_ContentPaneInset.m +com_codename1_ui_Sheet_ShowPainter.m +com_codename1_ui_SideMenuBar.m +com_codename1_ui_SideMenuBar_10.m +com_codename1_ui_SideMenuBar_11.m +com_codename1_ui_SideMenuBar_2.m +com_codename1_ui_SideMenuBar_3.m +com_codename1_ui_SideMenuBar_4.m +com_codename1_ui_SideMenuBar_5.m +com_codename1_ui_SideMenuBar_6.m +com_codename1_ui_SideMenuBar_7.m +com_codename1_ui_SideMenuBar_8.m +com_codename1_ui_SideMenuBar_8_1.m +com_codename1_ui_SideMenuBar_8_1_1.m +com_codename1_ui_SideMenuBar_8_1_2.m +com_codename1_ui_SideMenuBar_8_2.m +com_codename1_ui_SideMenuBar_8_3.m +com_codename1_ui_SideMenuBar_8_4.m +com_codename1_ui_SideMenuBar_8_4_1.m +com_codename1_ui_SideMenuBar_9.m +com_codename1_ui_SideMenuBar_CommandWrapper.m +com_codename1_ui_SideMenuBar_CommandWrapper_1.m +com_codename1_ui_SideMenuBar_CommandWrapper_ShowWaiter.m +com_codename1_ui_SideMenuBar_CommandWrapper_ShowWaiter_1.m +com_codename1_ui_SideMenuBar_MenuTransition.m +com_codename1_ui_Slider.m +com_codename1_ui_Slider_1.m +com_codename1_ui_Slider_SliderActionEvent.m +com_codename1_ui_Stroke.m +com_codename1_ui_TabSelectionMorph.m +com_codename1_ui_TabSelectionMorph_Tokens.m +com_codename1_ui_Tabs.m +com_codename1_ui_Tabs_1.m +com_codename1_ui_Tabs_2.m +com_codename1_ui_Tabs_SwipeListener.m +com_codename1_ui_Tabs_TabFocusListener.m +com_codename1_ui_Tabs_TabsLayout.m +com_codename1_ui_TextArea.m +com_codename1_ui_TextArea_1.m +com_codename1_ui_TextArea_2.m +com_codename1_ui_TextArea_3.m +com_codename1_ui_TextArea_4.m +com_codename1_ui_TextArea_5.m +com_codename1_ui_TextArea_TextAreaInputDevice.m +com_codename1_ui_TextComponent.m +com_codename1_ui_TextComponent_1.m +com_codename1_ui_TextComponent_2.m +com_codename1_ui_TextComponent_3.m +com_codename1_ui_TextComponent_4.m +com_codename1_ui_TextComponent_5.m +com_codename1_ui_TextField.m +com_codename1_ui_TextField_CommandHandler.m +com_codename1_ui_TextHolder.m +com_codename1_ui_TextInputClient.m +com_codename1_ui_TextInputConfig.m +com_codename1_ui_TextInputState.m +com_codename1_ui_TextSelection.m +com_codename1_ui_TextSelection_1.m +com_codename1_ui_TextSelection_2.m +com_codename1_ui_TextSelection_3.m +com_codename1_ui_TextSelection_3_1.m +com_codename1_ui_TextSelection_3_2.m +com_codename1_ui_TextSelection_3_3.m +com_codename1_ui_TextSelection_3_4.m +com_codename1_ui_TextSelection_4.m +com_codename1_ui_TextSelection_Char.m +com_codename1_ui_TextSelection_DragHandle.m +com_codename1_ui_TextSelection_SelectionMask.m +com_codename1_ui_TextSelection_SelectionMenu.m +com_codename1_ui_TextSelection_Span.m +com_codename1_ui_TextSelection_Spans.m +com_codename1_ui_TextSelection_TextSelectionSupport.m +com_codename1_ui_TextSelection_TextSelectionTrigger.m +com_codename1_ui_Toolbar.m +com_codename1_ui_Toolbar_1.m +com_codename1_ui_Toolbar_10.m +com_codename1_ui_Toolbar_11.m +com_codename1_ui_Toolbar_12.m +com_codename1_ui_Toolbar_13.m +com_codename1_ui_Toolbar_14.m +com_codename1_ui_Toolbar_15.m +com_codename1_ui_Toolbar_16.m +com_codename1_ui_Toolbar_17.m +com_codename1_ui_Toolbar_18.m +com_codename1_ui_Toolbar_2.m +com_codename1_ui_Toolbar_4.m +com_codename1_ui_Toolbar_5.m +com_codename1_ui_Toolbar_6.m +com_codename1_ui_Toolbar_7.m +com_codename1_ui_Toolbar_8.m +com_codename1_ui_Toolbar_9.m +com_codename1_ui_Toolbar_BackCommandPolicy.m +com_codename1_ui_Toolbar_CloseSideMenuCountdown.m +com_codename1_ui_Toolbar_ToolbarSideMenu.m +com_codename1_ui_Toolbar_ToolbarSideMenu_1.m +com_codename1_ui_Toolbar_ToolbarSideMenu_2.m +com_codename1_ui_Toolbar_ToolbarWindowDrag.m +com_codename1_ui_TooltipManager.m +com_codename1_ui_TooltipManager_1.m +com_codename1_ui_TopLevelContainer.m +com_codename1_ui_TopLevelSupport.m +com_codename1_ui_Transform.m +com_codename1_ui_Transform_1.m +com_codename1_ui_Transform_IdentityHolder.m +com_codename1_ui_Transform_ImmutableTransform.m +com_codename1_ui_Transform_NotInvertibleException.m +com_codename1_ui_VirtualInputDevice.m +com_codename1_ui_Window.m +com_codename1_ui_Window_1.m +com_codename1_ui_Window_12.m +com_codename1_ui_Window_13.m +com_codename1_ui_Window_14.m +com_codename1_ui_Window_15.m +com_codename1_ui_Window_16.m +com_codename1_ui_Window_17.m +com_codename1_ui_Window_18.m +com_codename1_ui_Window_2.m +com_codename1_ui_Window_20.m +com_codename1_ui_Window_21.m +com_codename1_ui_Window_22.m +com_codename1_ui_Window_23.m +com_codename1_ui_Window_24.m +com_codename1_ui_Window_25.m +com_codename1_ui_Window_26.m +com_codename1_ui_Window_27.m +com_codename1_ui_Window_28.m +com_codename1_ui_Window_29.m +com_codename1_ui_Window_3.m +com_codename1_ui_Window_30.m +com_codename1_ui_Window_31.m +com_codename1_ui_Window_32.m +com_codename1_ui_Window_4.m +com_codename1_ui_Window_5.m +com_codename1_ui_Window_6.m +com_codename1_ui_Window_7.m +com_codename1_ui_Window_8.m +com_codename1_ui_Window_PointerExemption.m +com_codename1_ui_Window_ScopedKeyListener.m +com_codename1_ui_accessibility_AccessibilityAction.m +com_codename1_ui_accessibility_AccessibilityAction_Handler.m +com_codename1_ui_accessibility_AccessibilityAssertions.m +com_codename1_ui_accessibility_AccessibilityCheckedState.m +com_codename1_ui_accessibility_AccessibilityChildProvider.m +com_codename1_ui_accessibility_AccessibilityCollectionInfo.m +com_codename1_ui_accessibility_AccessibilityCollectionItemInfo.m +com_codename1_ui_accessibility_AccessibilityGrouping.m +com_codename1_ui_accessibility_AccessibilityInspector.m +com_codename1_ui_accessibility_AccessibilityIssue.m +com_codename1_ui_accessibility_AccessibilityIssue_Severity.m +com_codename1_ui_accessibility_AccessibilityLiveRegion.m +com_codename1_ui_accessibility_AccessibilityManager.m +com_codename1_ui_accessibility_AccessibilityManager_1.m +com_codename1_ui_accessibility_AccessibilityManager_ActivateHandler.m +com_codename1_ui_accessibility_AccessibilityManager_BuildNode.m +com_codename1_ui_accessibility_AccessibilityManager_FocusHandler.m +com_codename1_ui_accessibility_AccessibilityManager_ListActivateHandler.m +com_codename1_ui_accessibility_AccessibilityManager_ListScrollHandler.m +com_codename1_ui_accessibility_AccessibilityManager_RefreshPass.m +com_codename1_ui_accessibility_AccessibilityManager_SetTextHandler.m +com_codename1_ui_accessibility_AccessibilityManager_SliderAdjustmentHandler.m +com_codename1_ui_accessibility_AccessibilityManager_SortKeyComparator.m +com_codename1_ui_accessibility_AccessibilityNode.m +com_codename1_ui_accessibility_AccessibilityNodeSnapshot.m +com_codename1_ui_accessibility_AccessibilityNodeSnapshot_Builder.m +com_codename1_ui_accessibility_AccessibilityRange.m +com_codename1_ui_accessibility_AccessibilityRole.m +com_codename1_ui_accessibility_AccessibilityTreeSnapshot.m +com_codename1_ui_animations_Animation.m +com_codename1_ui_animations_AnimationObject.m +com_codename1_ui_animations_AnimationTime.m +com_codename1_ui_animations_BubbleTransition.m +com_codename1_ui_animations_CommonTransitions.m +com_codename1_ui_animations_ComponentAnimation.m +com_codename1_ui_animations_ComponentAnimation_CompoundAnimation.m +com_codename1_ui_animations_ComponentAnimation_UIMutation.m +com_codename1_ui_animations_FlipTransition.m +com_codename1_ui_animations_MorphTransition.m +com_codename1_ui_animations_MorphTransition_CC.m +com_codename1_ui_animations_MorphTransition_MorphElement.m +com_codename1_ui_animations_Motion.m +com_codename1_ui_animations_Timeline.m +com_codename1_ui_animations_Transition.m +com_codename1_ui_editor_BidiUtil.m +com_codename1_ui_editor_CodePureEditor.m +com_codename1_ui_editor_CodeView.m +com_codename1_ui_editor_EditorDocument.m +com_codename1_ui_editor_EditorHost.m +com_codename1_ui_editor_EditorView.m +com_codename1_ui_editor_EditorView_1.m +com_codename1_ui_editor_HtmlImporter.m +com_codename1_ui_editor_HtmlImporter_Result.m +com_codename1_ui_editor_HtmlSerializer.m +com_codename1_ui_editor_InlineStyles.m +com_codename1_ui_editor_InlineStyles_StylePredicate.m +com_codename1_ui_editor_InlineStyles_StyleTransform.m +com_codename1_ui_editor_LanguageDef.m +com_codename1_ui_editor_PureEditor.m +com_codename1_ui_editor_RichBlocks.m +com_codename1_ui_editor_RichBlocks_BlockAttr.m +com_codename1_ui_editor_RichPureEditor.m +com_codename1_ui_editor_RichTextImporter.m +com_codename1_ui_editor_RichTextImporter_1.m +com_codename1_ui_editor_RichTextImporter_ModelBuilder.m +com_codename1_ui_editor_RichTextImporter_RtfState.m +com_codename1_ui_editor_RichTextSerializer.m +com_codename1_ui_editor_RichView.m +com_codename1_ui_editor_RichView_1.m +com_codename1_ui_editor_RichView_10.m +com_codename1_ui_editor_RichView_11.m +com_codename1_ui_editor_RichView_12.m +com_codename1_ui_editor_RichView_13.m +com_codename1_ui_editor_RichView_2.m +com_codename1_ui_editor_RichView_3.m +com_codename1_ui_editor_RichView_4.m +com_codename1_ui_editor_RichView_5.m +com_codename1_ui_editor_RichView_6.m +com_codename1_ui_editor_RichView_7.m +com_codename1_ui_editor_RichView_8.m +com_codename1_ui_editor_RichView_9.m +com_codename1_ui_editor_RichView_BlockOp.m +com_codename1_ui_editor_RichView_RichState.m +com_codename1_ui_editor_SyntaxHighlightResult.m +com_codename1_ui_editor_SyntaxHighlighter.m +com_codename1_ui_editor_SyntaxToken.m +com_codename1_ui_editor_TextStyle.m +com_codename1_ui_editor_ThemePalette.m +com_codename1_ui_editor_Tokenizer.m +com_codename1_ui_editor_UndoManager.m +com_codename1_ui_editor_UndoManager_Edit.m +com_codename1_ui_events_ActionEvent.m +com_codename1_ui_events_ActionEvent_Type.m +com_codename1_ui_events_ActionListener.m +com_codename1_ui_events_ActionSource.m +com_codename1_ui_events_BrowserNavigationCallback.m +com_codename1_ui_events_ComponentStateChangeEvent.m +com_codename1_ui_events_DataChangedListener.m +com_codename1_ui_events_FocusListener.m +com_codename1_ui_events_MessageEvent.m +com_codename1_ui_events_PointerEvent.m +com_codename1_ui_events_ScrollListener.m +com_codename1_ui_events_SelectionListener.m +com_codename1_ui_events_StyleListener.m +com_codename1_ui_events_WheelEvent.m +com_codename1_ui_events_WindowEvent.m +com_codename1_ui_events_WindowEvent_Type.m +com_codename1_ui_geom_AffineTransform.m +com_codename1_ui_geom_Dimension.m +com_codename1_ui_geom_Dimension2D.m +com_codename1_ui_geom_GeneralPath.m +com_codename1_ui_geom_GeneralPath_1.m +com_codename1_ui_geom_GeneralPath_EPoint.m +com_codename1_ui_geom_GeneralPath_Ellipse.m +com_codename1_ui_geom_GeneralPath_Iterator.m +com_codename1_ui_geom_GeneralPath_Pt.m +com_codename1_ui_geom_GeneralPath_ShapeUtil.m +com_codename1_ui_geom_GeneralPath_ShapeUtil_CubicCurve.m +com_codename1_ui_geom_GeneralPath_ShapeUtil_QuadCurve.m +com_codename1_ui_geom_Geometry.m +com_codename1_ui_geom_Geometry_BezierCurve.m +com_codename1_ui_geom_PathIterator.m +com_codename1_ui_geom_Point.m +com_codename1_ui_geom_Point2D.m +com_codename1_ui_geom_Rectangle.m +com_codename1_ui_geom_Rectangle2D.m +com_codename1_ui_geom_Shape.m +com_codename1_ui_html_AsyncDocumentRequestHandler.m +com_codename1_ui_html_CSSBgPainter.m +com_codename1_ui_html_CSSElement.m +com_codename1_ui_html_CSSElement_AttString.m +com_codename1_ui_html_CSSEngine.m +com_codename1_ui_html_CSSEngine_CSSEngineHolder.m +com_codename1_ui_html_CSSParser.m +com_codename1_ui_html_CSSParserCallback.m +com_codename1_ui_html_CSSParser_CSSParserHolder.m +com_codename1_ui_html_CSSParser_ExtInputStreamReader.m +com_codename1_ui_html_CellConstraint.m +com_codename1_ui_html_DefaultDocumentRequestHandler.m +com_codename1_ui_html_DocumentInfo.m +com_codename1_ui_html_DocumentRequestHandler.m +com_codename1_ui_html_HTMLCallback.m +com_codename1_ui_html_HTMLComponent.m +com_codename1_ui_html_HTMLComponent_1.m +com_codename1_ui_html_HTMLComponent_2.m +com_codename1_ui_html_HTMLComponent_3.m +com_codename1_ui_html_HTMLComponent_4.m +com_codename1_ui_html_HTMLComponent_5.m +com_codename1_ui_html_HTMLComponent_6.m +com_codename1_ui_html_HTMLComponent_ForLabel.m +com_codename1_ui_html_HTMLComponent_HTMLBullet.m +com_codename1_ui_html_HTMLComponent_HTMLComboBox.m +com_codename1_ui_html_HTMLComponent_HTMLListIndex.m +com_codename1_ui_html_HTMLComponent_InputFormatRunnable.m +com_codename1_ui_html_HTMLComponent_RedirectThread.m +com_codename1_ui_html_HTMLElement.m +com_codename1_ui_html_HTMLEventsListener.m +com_codename1_ui_html_HTMLEventsListener_1.m +com_codename1_ui_html_HTMLEventsListener_2.m +com_codename1_ui_html_HTMLFont.m +com_codename1_ui_html_HTMLForm.m +com_codename1_ui_html_HTMLForm_NamedCommand.m +com_codename1_ui_html_HTMLImageMap.m +com_codename1_ui_html_HTMLInputFormat.m +com_codename1_ui_html_HTMLInputFormat_ConstraintsTextField.m +com_codename1_ui_html_HTMLInputFormat_FormatConstraint.m +com_codename1_ui_html_HTMLLink.m +com_codename1_ui_html_HTMLListItem.m +com_codename1_ui_html_HTMLParser.m +com_codename1_ui_html_HTMLParser_FragmentHTMLElement.m +com_codename1_ui_html_HTMLTable.m +com_codename1_ui_html_HTMLTableModel.m +com_codename1_ui_html_HTMLUtils.m +com_codename1_ui_html_IOCallback.m +com_codename1_ui_html_ImageMapData.m +com_codename1_ui_html_MultiComboBox.m +com_codename1_ui_html_MultiComboBox_MultiCellRenderer.m +com_codename1_ui_html_MultiComboBox_MultiListModel.m +com_codename1_ui_html_OptionItem.m +com_codename1_ui_html_ResourceThreadQueue.m +com_codename1_ui_html_ResourceThreadQueue_ResourceThread.m +com_codename1_ui_html_ResourceThreadQueue_ResourceThread_1.m +com_codename1_ui_layouts_BorderLayout.m +com_codename1_ui_layouts_BoxLayout.m +com_codename1_ui_layouts_FlowLayout.m +com_codename1_ui_layouts_GridLayout.m +com_codename1_ui_layouts_LayeredLayout.m +com_codename1_ui_layouts_LayeredLayout_1.m +com_codename1_ui_layouts_LayeredLayout_ChildrenInTraversalOrderComparator.m +com_codename1_ui_layouts_LayeredLayout_LayeredLayoutConstraint.m +com_codename1_ui_layouts_LayeredLayout_LayeredLayoutConstraint_Inset.m +com_codename1_ui_layouts_Layout.m +com_codename1_ui_list_CellRenderer.m +com_codename1_ui_list_DefaultListCellRenderer.m +com_codename1_ui_list_DefaultListModel.m +com_codename1_ui_list_ListCellRenderer.m +com_codename1_ui_list_ListModel.m +com_codename1_ui_list_MultipleSelectionListModel.m +com_codename1_ui_plaf_Border.m +com_codename1_ui_plaf_Border_EmptyBorderHolder.m +com_codename1_ui_plaf_CSSBorder.m +com_codename1_ui_plaf_CSSBorder_1.m +com_codename1_ui_plaf_CSSBorder_10.m +com_codename1_ui_plaf_CSSBorder_11.m +com_codename1_ui_plaf_CSSBorder_12.m +com_codename1_ui_plaf_CSSBorder_13.m +com_codename1_ui_plaf_CSSBorder_14.m +com_codename1_ui_plaf_CSSBorder_15.m +com_codename1_ui_plaf_CSSBorder_2.m +com_codename1_ui_plaf_CSSBorder_3.m +com_codename1_ui_plaf_CSSBorder_4.m +com_codename1_ui_plaf_CSSBorder_5.m +com_codename1_ui_plaf_CSSBorder_6.m +com_codename1_ui_plaf_CSSBorder_7.m +com_codename1_ui_plaf_CSSBorder_8.m +com_codename1_ui_plaf_CSSBorder_9.m +com_codename1_ui_plaf_CSSBorder_Arrow.m +com_codename1_ui_plaf_CSSBorder_BackgroundImage.m +com_codename1_ui_plaf_CSSBorder_BorderImage.m +com_codename1_ui_plaf_CSSBorder_BorderRadius.m +com_codename1_ui_plaf_CSSBorder_BorderStroke.m +com_codename1_ui_plaf_CSSBorder_BoxShadow.m +com_codename1_ui_plaf_CSSBorder_Color.m +com_codename1_ui_plaf_CSSBorder_ColorStop.m +com_codename1_ui_plaf_CSSBorder_Context.m +com_codename1_ui_plaf_CSSBorder_Decorator.m +com_codename1_ui_plaf_CSSBorder_LinearGradient.m +com_codename1_ui_plaf_CSSBorder_RadialGradient.m +com_codename1_ui_plaf_CSSBorder_ScalarUnit.m +com_codename1_ui_plaf_DefaultLookAndFeel.m +com_codename1_ui_plaf_DefaultLookAndFeel_1.m +com_codename1_ui_plaf_DefaultLookAndFeel_1_1.m +com_codename1_ui_plaf_DefaultLookAndFeel_2.m +com_codename1_ui_plaf_DefaultLookAndFeel_PullToRefreshComponentClosure.m +com_codename1_ui_plaf_GlassRecipe.m +com_codename1_ui_plaf_GlassRecipe_Kind.m +com_codename1_ui_plaf_LookAndFeel.m +com_codename1_ui_plaf_LookAndFeel_InteractiveScrollThumb.m +com_codename1_ui_plaf_RoundBorder.m +com_codename1_ui_plaf_RoundBorder_1.m +com_codename1_ui_plaf_RoundBorder_CacheValue.m +com_codename1_ui_plaf_RoundBorder_SolidPaint.m +com_codename1_ui_plaf_RoundRectBorder.m +com_codename1_ui_plaf_RoundRectBorder_1.m +com_codename1_ui_plaf_RoundRectBorder_2.m +com_codename1_ui_plaf_Style.m +com_codename1_ui_plaf_StyleParser.m +com_codename1_ui_plaf_StyleParser_BorderInfo.m +com_codename1_ui_plaf_StyleParser_BoxInfo.m +com_codename1_ui_plaf_StyleParser_FontInfo.m +com_codename1_ui_plaf_StyleParser_ImageInfo.m +com_codename1_ui_plaf_StyleParser_MarginInfo.m +com_codename1_ui_plaf_StyleParser_PaddingInfo.m +com_codename1_ui_plaf_StyleParser_ScalarValue.m +com_codename1_ui_plaf_StyleParser_StyleInfo.m +com_codename1_ui_plaf_UIManager.m +com_codename1_ui_plaf_UIManager_UIManagerHolder.m +com_codename1_ui_scene_Bounds.m +com_codename1_ui_scene_Camera.m +com_codename1_ui_scene_Node.m +com_codename1_ui_scene_NodePainter.m +com_codename1_ui_scene_PerspectiveCamera.m +com_codename1_ui_scene_Point3D.m +com_codename1_ui_scene_Scene.m +com_codename1_ui_scene_TextPainter.m +com_codename1_ui_spinner_BaseSpinner.m +com_codename1_ui_spinner_BaseSpinner_ParentRepaintingLabel.m +com_codename1_ui_spinner_CalendarPicker.m +com_codename1_ui_spinner_DateSpinner.m +com_codename1_ui_spinner_DateSpinner3D.m +com_codename1_ui_spinner_DateSpinner3D_1.m +com_codename1_ui_spinner_DateSpinner3D_DayRowFormatter.m +com_codename1_ui_spinner_DateSpinner3D_MonthRowFormatter.m +com_codename1_ui_spinner_DateSpinner3D_YearRowFormatter.m +com_codename1_ui_spinner_DateSpinner_1.m +com_codename1_ui_spinner_DateTimeRenderer.m +com_codename1_ui_spinner_DateTimeSpinner.m +com_codename1_ui_spinner_DateTimeSpinner3D.m +com_codename1_ui_spinner_DurationSpinner3D.m +com_codename1_ui_spinner_GenericSpinner.m +com_codename1_ui_spinner_InternalPickerWidget.m +com_codename1_ui_spinner_Picker.m +com_codename1_ui_spinner_Picker_1.m +com_codename1_ui_spinner_Picker_1_1.m +com_codename1_ui_spinner_Picker_1_2.m +com_codename1_ui_spinner_Picker_1_2_1.m +com_codename1_ui_spinner_Picker_1_3.m +com_codename1_ui_spinner_Picker_1_4.m +com_codename1_ui_spinner_Picker_1_5.m +com_codename1_ui_spinner_Picker_1_6.m +com_codename1_ui_spinner_Picker_1_7.m +com_codename1_ui_spinner_Picker_1_8.m +com_codename1_ui_spinner_Picker_1_9.m +com_codename1_ui_spinner_Picker_2.m +com_codename1_ui_spinner_Picker_3.m +com_codename1_ui_spinner_Picker_3_1.m +com_codename1_ui_spinner_Picker_4.m +com_codename1_ui_spinner_Picker_4_1.m +com_codename1_ui_spinner_Picker_DateGetter.m +com_codename1_ui_spinner_Picker_LightweightPopupButton.m +com_codename1_ui_spinner_Picker_PopupButtonActionListener.m +com_codename1_ui_spinner_Spinner.m +com_codename1_ui_spinner_Spinner3D.m +com_codename1_ui_spinner_Spinner3D_1.m +com_codename1_ui_spinner_Spinner3D_2.m +com_codename1_ui_spinner_Spinner3D_3.m +com_codename1_ui_spinner_Spinner3D_4.m +com_codename1_ui_spinner_Spinner3D_DateModelAdapter.m +com_codename1_ui_spinner_Spinner3D_NumberModelAdapter.m +com_codename1_ui_spinner_Spinner3D_ScrollingContainer.m +com_codename1_ui_spinner_SpinnerDateModel.m +com_codename1_ui_spinner_SpinnerNode.m +com_codename1_ui_spinner_SpinnerNode_1.m +com_codename1_ui_spinner_SpinnerNode_2.m +com_codename1_ui_spinner_SpinnerNode_RowFormatter.m +com_codename1_ui_spinner_SpinnerNode_SpinnerNodePainter.m +com_codename1_ui_spinner_SpinnerNode_SpinnerRenderer.m +com_codename1_ui_spinner_SpinnerNumberModel.m +com_codename1_ui_spinner_SpinnerRenderer.m +com_codename1_ui_spinner_TimeSpinner.m +com_codename1_ui_spinner_TimeSpinner3D.m +com_codename1_ui_spinner_TimeSpinner3D_1.m +com_codename1_ui_spinner_TimeSpinner3D_AmPmRowFormatter.m +com_codename1_ui_spinner_TimeSpinner3D_HourRowFormatter.m +com_codename1_ui_spinner_TimeSpinner3D_MinuteRowFormatter.m +com_codename1_ui_spinner_TimeSpinner_1.m +com_codename1_ui_spinner_TimeSpinner_TimeSpinnerRenderer.m +com_codename1_ui_spinner_TimeSpinner_TwoDigitSpinnerRenderer.m +com_codename1_ui_table_AbstractTableModel.m +com_codename1_ui_table_DefaultTableModel.m +com_codename1_ui_table_SortableTableModel.m +com_codename1_ui_table_SortableTableModel_TemporarySorterComparator.m +com_codename1_ui_table_Table.m +com_codename1_ui_table_TableLayout.m +com_codename1_ui_table_TableLayout_Constraint.m +com_codename1_ui_table_TableModel.m +com_codename1_ui_table_Table_1.m +com_codename1_ui_table_Table_ColumnSortComparator.m +com_codename1_ui_table_Table_Listener.m +com_codename1_ui_tree_Tree.m +com_codename1_ui_tree_TreeModel.m +com_codename1_ui_tree_Tree_Handler.m +com_codename1_ui_tree_Tree_StringArrayTreeModel.m +com_codename1_ui_util_Effects.m +com_codename1_ui_util_EventDispatcher.m +com_codename1_ui_util_EventDispatcher_CallbackClass.m +com_codename1_ui_util_ImageIO.m +com_codename1_ui_util_Resources.m +com_codename1_ui_util_Resources_MediaRule.m +com_codename1_ui_util_UITimer.m +com_codename1_ui_util_UITimer_Internal.m +com_codename1_ui_util_WeakHashMap.m +com_codename1_ui_validation_Constraint.m +com_codename1_ui_validation_GroupConstraint.m +com_codename1_ui_validation_LengthConstraint.m +com_codename1_ui_validation_Validator.m +com_codename1_ui_validation_Validator_1.m +com_codename1_ui_validation_Validator_1_1.m +com_codename1_ui_validation_Validator_2.m +com_codename1_ui_validation_Validator_3.m +com_codename1_ui_validation_Validator_3_1.m +com_codename1_ui_validation_Validator_ComponentListener.m +com_codename1_ui_validation_Validator_ConstraintFocusListener.m +com_codename1_ui_validation_Validator_HighlightMode.m +com_codename1_util_AsyncResource.m +com_codename1_util_AsyncResource_12.m +com_codename1_util_AsyncResource_13.m +com_codename1_util_AsyncResource_6.m +com_codename1_util_AsyncResource_7.m +com_codename1_util_AsyncResource_8.m +com_codename1_util_AsyncResource_9.m +com_codename1_util_AsyncResource_AsyncCallback.m +com_codename1_util_AsyncResource_AsyncCallback_1.m +com_codename1_util_AsyncResource_AsyncCallback_2.m +com_codename1_util_AsyncResource_AsyncExecutionException.m +com_codename1_util_AsyncResource_CancellationException.m +com_codename1_util_AsyncResult.m +com_codename1_util_Base64.m +com_codename1_util_Callback.m +com_codename1_util_CallbackAdapter.m +com_codename1_util_CallbackDispatcher.m +com_codename1_util_CaseInsensitiveOrder.m +com_codename1_util_DateUtil.m +com_codename1_util_EasyThread.m +com_codename1_util_EasyThread_1.m +com_codename1_util_EasyThread_ErrorListener.m +com_codename1_util_FailureCallback.m +com_codename1_util_LazyValue.m +com_codename1_util_MathUtil.m +com_codename1_util_RunnableWithResult.m +com_codename1_util_Simd.m +com_codename1_util_StringUtil.m +com_codename1_util_SuccessCallback.m +com_codename1_util_regex_CharacterIterator.m +com_codename1_util_regex_RE.m +com_codename1_util_regex_RECharacter.m +com_codename1_util_regex_RECompiler.m +com_codename1_util_regex_RECompiler_RERange.m +com_codename1_util_regex_REProgram.m +com_codename1_util_regex_RESyntaxException.m +com_codename1_util_regex_StringCharacterIterator.m +com_codename1_vpn_VpnError.m +com_codename1_vpn_VpnException.m +com_codename1_vpn_VpnStatus.m +com_codename1_vpn_profile_Vpn.m +com_codename1_vpn_profile_VpnStatusListener.m +com_codename1_vpn_profile_Vpn_StatusEvent.m +com_codename1_vpn_spi_VpnBridge.m +com_codename1_vpn_tunnel_PacketBuffer.m +com_codename1_vpn_tunnel_TunnelTransport.m +com_codename1_vpn_tunnel_Tunnels.m +com_codename1_vpn_tunnel_VpnTunnel.m +com_codename1_vr_HeadTracker.m +com_codename1_vr_HeadTracker_1.m +com_codename1_vr_HeadTracker_2.m +com_codename1_vr_HeadTracker_3.m +com_codename1_vr_Media360View.m +com_codename1_vr_Media360View_1.m +com_codename1_vr_Media360View_SphereLoop.m +com_codename1_vr_OrientationFilter.m +com_codename1_vr_TextureSource.m +com_codename1_vr_VRCameraRig.m +com_codename1_vr_VREye.m +com_codename1_vr_VRRenderer.m +com_codename1_vr_VRSettings.m +com_codename1_vr_VRView.m +com_codename1_vr_VRView_1.m +com_codename1_vr_VRView_EyeLoop.m +com_codename1_wearable_WearableConnection.m +com_codename1_wearable_WearableConnection_1.m +com_codename1_wearable_WearableConnection_2.m +com_codename1_wearable_WearableConnection_3.m +com_codename1_wearable_WearableConnection_4.m +com_codename1_wearable_WearableConnection_5.m +com_codename1_wearable_WearableConnection_6.m +com_codename1_wearable_WearableConnection_7.m +com_codename1_wearable_WearableConnection_8.m +com_codename1_wearable_WearableConnection_9.m +com_codename1_wearable_WearableConnection_DroppedDeliveryHandler.m +com_codename1_wearable_WearableConnection_OneShot.m +com_codename1_wearable_WearableConnection_PendingReply.m +com_codename1_wearable_WearableConnection_Replicated.m +com_codename1_wearable_WearableDataListener.m +com_codename1_wearable_WearableMessage.m +com_codename1_wearable_WearableMessageListener.m +com_codename1_wearable_WearableReplyHandler.m +com_codename1_wearable_WearableStateListener.m +com_codename1_wearable_spi_WearableBridge.m +com_codename1_xml_Element.m +com_codename1_xml_ParserCallback.m +com_codename1_xml_XMLParser.m +com_codenameone_examples_hellocodenameone_ArrayGuardDemo.m +com_codenameone_examples_hellocodenameone_ArrayGuardDemo_Holder.m +com_codenameone_examples_hellocodenameone_Base64Native.m +com_codenameone_examples_hellocodenameone_Base64NativeImpl.m +com_codenameone_examples_hellocodenameone_Base64NativeImplCodenameOne.m +com_codenameone_examples_hellocodenameone_Base64NativeStub.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo_AlternateFormatter.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo_BaseFormatter.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo_ChildFormatter.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo_lambda_0.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo_lambda_1.m +com_codenameone_examples_hellocodenameone_DefaultMethodDemo_lambda_2.m +com_codenameone_examples_hellocodenameone_DemoNote.m +com_codenameone_examples_hellocodenameone_HelloCarApplication.m +com_codenameone_examples_hellocodenameone_HelloCarApplication_onCreateRootScreen_1.m +com_codenameone_examples_hellocodenameone_HelloCodenameOne.m +com_codenameone_examples_hellocodenameone_HelloCodenameOneStub.m +com_codenameone_examples_hellocodenameone_HelloCodenameOneStub_1.m +com_codenameone_examples_hellocodenameone_HelloCodenameOneWatch.m +com_codenameone_examples_hellocodenameone_HelloCodenameOneWatchStub.m +com_codenameone_examples_hellocodenameone_HelloCodenameOneWatchStub_1.m +com_codenameone_examples_hellocodenameone_HelloCodenameOne_lambda_0.m +com_codenameone_examples_hellocodenameone_InPlaceEditViewNative.m +com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeImpl.m +com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeImplCodenameOne.m +com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeStub.m +com_codenameone_examples_hellocodenameone_IntentsDemo.m +com_codenameone_examples_hellocodenameone_LocalNotificationNative.m +com_codenameone_examples_hellocodenameone_LocalNotificationNativeImpl.m +com_codenameone_examples_hellocodenameone_LocalNotificationNativeImplCodenameOne.m +com_codenameone_examples_hellocodenameone_LocalNotificationNativeStub.m +com_codenameone_examples_hellocodenameone_NativeInterfaceLanguageValidator.m +com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNative.m +com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeImpl.m +com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeImplCodenameOne.m +com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeStub.m +com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNative.m +com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeImpl.m +com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeImplCodenameOne.m +com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeStub.m +com_codenameone_examples_hellocodenameone_SwiftKotlinNative.m +com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImpl.m +com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImplCodenameOne.m +com_codenameone_examples_hellocodenameone_SwiftKotlinNativeStub.m +com_codenameone_examples_hellocodenameone_tests_ARApiTest.m +com_codenameone_examples_hellocodenameone_tests_ARApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_AbstractComponentReplaceScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AbstractContainerAnimationScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_3.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_4.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_5.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_5_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_5_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_CleanPaintComponent.m +com_codenameone_examples_hellocodenameone_tests_AbstractStickyHeaderScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AbstractTransitionScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AdsScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AdsScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_AdsScreenshotTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_AnimateHierarchyScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AnimateLayoutScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AnimateUnlayoutScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AppReviewDialogScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest.m +com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest_2.m +com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest_3.m +com_codenameone_examples_hellocodenameone_tests_BackgroundThreadUiAccessTest.m +com_codenameone_examples_hellocodenameone_tests_BackgroundThreadUiAccessTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_Base64NativePerformanceTest.m +com_codenameone_examples_hellocodenameone_tests_BaseTest.m +com_codenameone_examples_hellocodenameone_tests_BaseTest_1.m +com_codenameone_examples_hellocodenameone_tests_BaseTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_BaseTest_FirstPaintGate.m +com_codenameone_examples_hellocodenameone_tests_BaseTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_BaseTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_BaseTest_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_BridgeBulkTransferGuardTest.m +com_codenameone_examples_hellocodenameone_tests_BridgeBulkTransferGuardTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_4.m +com_codenameone_examples_hellocodenameone_tests_ButtonThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_CommonCanvas.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_GameCell.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_GameConstants.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_GameViewer.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Hue.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Marker.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_PanelCanvas.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_ProxyCanvas.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_ShellComponent.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Sketchable.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_SlotProvider.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_StackTile.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Tile.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_TokenMenu.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_TokenMenuHost.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_CalendarApiTest.m +com_codenameone_examples_hellocodenameone_tests_CallDetectionAPITest.m +com_codenameone_examples_hellocodenameone_tests_CameraApiTest.m +com_codenameone_examples_hellocodenameone_tests_CameraApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_CenteredDialogTitleScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_CenteredInteractionDialogTitleScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ChatInputScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ChatInputScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_ChatViewScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_CheckBoxRadioThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ClipboardRoundTripTest.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper_TransportFailureState.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerReporter.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_6.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssHashTracker.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_1.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_2.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_3.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_4.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_5.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_6.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_7.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_8.m +com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_AckLatch.m +com_codenameone_examples_hellocodenameone_tests_CodeEditorScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_CodeEditorScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_CodeEditorScreenshotTest_1_1.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_1.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_10.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_2.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_3.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_4.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_5.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_6.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_7.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_8.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_9.m +com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_Workload.m +com_codenameone_examples_hellocodenameone_tests_ComponentReplaceFadeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ComponentReplaceFlipScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ComponentReplaceSlideScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ContactPickerApiTest.m +com_codenameone_examples_hellocodenameone_tests_ContinuityStateTest.m +com_codenameone_examples_hellocodenameone_tests_ContinuityStateTest_1.m +com_codenameone_examples_hellocodenameone_tests_CoverHorizontalTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_CryptoApiTest.m +com_codenameone_examples_hellocodenameone_tests_CssFilterBlurScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_CssGradientsScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_DarkLightShowcaseThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseConformanceTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseConformanceTest_1.m +com_codenameone_examples_hellocodenameone_tests_DatabaseConformanceTest_DatabaseBody.m +com_codenameone_examples_hellocodenameone_tests_DatabaseCursorLegacyTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseCursorLegacyTest_1.m +com_codenameone_examples_hellocodenameone_tests_DatabaseCursorTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseCursorTest_1.m +com_codenameone_examples_hellocodenameone_tests_DatabaseEncryptionTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseLifecycleTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseStatementLegacyTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseStatementLegacyTest_1.m +com_codenameone_examples_hellocodenameone_tests_DatabaseStatementTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseStatementTest_1.m +com_codenameone_examples_hellocodenameone_tests_DatabaseTransactionTest.m +com_codenameone_examples_hellocodenameone_tests_DatabaseTransactionTest_1.m +com_codenameone_examples_hellocodenameone_tests_DesktopModeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_DeviceInputApiTest.m +com_codenameone_examples_hellocodenameone_tests_DeviceInputApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_DialogThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_DocumentProviderPublishTest.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_Annotation.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_AnnotationPainter.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_TextureBackdropPainter.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_FadeTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_FileSystemStorageOpenInputStreamMissingTest.m +com_codenameone_examples_hellocodenameone_tests_FlipTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_FloatingActionButtonThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_FloatingToStringTest.m +com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DAnimationTest.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DAnimationTest_1.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DAnimationTest_2.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DCubeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DCubeScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DCubeScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DModelScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DModelScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DModelScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DTexturedCubeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DTexturedCubeScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_Gpu3DTexturedCubeScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_ImageViewerNavigationScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_InPlaceEditViewTest.m +com_codenameone_examples_hellocodenameone_tests_InferenceOnDeviceApiTest.m +com_codenameone_examples_hellocodenameone_tests_IntentsApiTest.m +com_codenameone_examples_hellocodenameone_tests_Java17Tests.m +com_codenameone_examples_hellocodenameone_tests_Java17Tests_MyRecord.m +com_codenameone_examples_hellocodenameone_tests_KotlinUiTest.m +com_codenameone_examples_hellocodenameone_tests_LandscapeCapture.m +com_codenameone_examples_hellocodenameone_tests_LandscapeCapture_1.m +com_codenameone_examples_hellocodenameone_tests_LandscapeCapture_2.m +com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest.m +com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_2.m +com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_3.m +com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_ClosedSessionOperation.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_3.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_4.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_5.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_6.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_7.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1_1_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1_1_1_1.m +com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_Variant.m +com_codenameone_examples_hellocodenameone_tests_ListThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_LocalNotificationOverrideTest.m +com_codenameone_examples_hellocodenameone_tests_LogSubclassCaptureTest.m +com_codenameone_examples_hellocodenameone_tests_LogSubclassCaptureTest_CapturingLog.m +com_codenameone_examples_hellocodenameone_tests_LottieAnimatedScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_MainScreenScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_Media360PanoramaScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_Media360PanoramaScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_Media360PanoramaScreenshotTest_1_1.m +com_codenameone_examples_hellocodenameone_tests_MediaPlaybackScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_MediaPlaybackScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_MorphElementMorphScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_MorphTransitionScrolledSourceTest.m +com_codenameone_examples_hellocodenameone_tests_MorphTransitionScrubScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_MorphTransitionSnapshotTest.m +com_codenameone_examples_hellocodenameone_tests_MorphTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_MotionSensorDeviceTest.m +com_codenameone_examples_hellocodenameone_tests_MotionSensorDeviceTest_1.m +com_codenameone_examples_hellocodenameone_tests_MotionSensorDeviceTest_2.m +com_codenameone_examples_hellocodenameone_tests_MotionShowcaseScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_MultiButtonThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_MultiWindowApiTest.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_1.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_OverflowPainter.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_RedBounds.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest.m +com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest_1.m +com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_NanoTimeApiTest.m +com_codenameone_examples_hellocodenameone_tests_NativeMapFallbackScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_4.m +com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_5.m +com_codenameone_examples_hellocodenameone_tests_PaletteOverrideThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_1.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_2.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_3.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_3_1.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_4.m +com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_4_1.m +com_codenameone_examples_hellocodenameone_tests_PickerThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_PullToRefreshSpinnerScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_PullToRefreshSpinnerScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_PureEditorScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_RealOsmVectorScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_RichTextAreaScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_RichTextAreaScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_RichTextAreaScreenshotTest_1_1.m +com_codenameone_examples_hellocodenameone_tests_SVGAnimatedScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SVGStaticScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ScreenshotPureEditors_Code.m +com_codenameone_examples_hellocodenameone_tests_ScreenshotPureEditors_Rich.m +com_codenameone_examples_hellocodenameone_tests_SecureStorageTest.m +com_codenameone_examples_hellocodenameone_tests_SheetScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SheetScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_SheetSlideUpAnimationScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SheetSlideUpAnimationScreenshotTest_DimScrimPainter.m +com_codenameone_examples_hellocodenameone_tests_SimdApiTest.m +com_codenameone_examples_hellocodenameone_tests_SimdBenchmarkTest.m +com_codenameone_examples_hellocodenameone_tests_SimdLargeAllocaTest.m +com_codenameone_examples_hellocodenameone_tests_SlideFadeTitleTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_SlideHorizontalBackTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_SlideHorizontalTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_SlideVerticalTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_SmoothScrollScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SmoothScrollScreenshotTest_ScrollContainer.m +com_codenameone_examples_hellocodenameone_tests_SpanLabelThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest_ScrollContainer.m +com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest_TestForm.m +com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_StickyHeaderFadeTransitionScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_StickyHeaderScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_StickyHeaderSlideTransitionScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_10.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_2.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_3.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_4.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_5.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_6.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_7.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_8.m +com_codenameone_examples_hellocodenameone_tests_StreamApiTest_9.m +com_codenameone_examples_hellocodenameone_tests_StringApiTest.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_FormatCall.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_10.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_11.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_12.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_13.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_14.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_15.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_16.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_17.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_18.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_19.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_20.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_21.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_22.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_4.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_5.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_6.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_7.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_8.m +com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_9.m +com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest.m +com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest_1.m +com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest_2.m +com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest_3.m +com_codenameone_examples_hellocodenameone_tests_SurfacesPublishTest.m +com_codenameone_examples_hellocodenameone_tests_SurfacesRasterizerScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SurfacesRasterizerScreenshotTest_RasterizerView.m +com_codenameone_examples_hellocodenameone_tests_SurfacesRemoteViewsScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SurfacesSerializerRoundTripTest.m +com_codenameone_examples_hellocodenameone_tests_SurfacesTimelineLogicTest.m +com_codenameone_examples_hellocodenameone_tests_SwitchThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_SystemBackNavigationTest.m +com_codenameone_examples_hellocodenameone_tests_SystemBackNavigationTest_1.m +com_codenameone_examples_hellocodenameone_tests_SystemBackNavigationTest_2.m +com_codenameone_examples_hellocodenameone_tests_TabsAnimatedIndicatorScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TabsLiquidGlassAnimationScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TabsLiquidGlassAnimationScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_TabsScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TabsThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TensileBounceScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TensileBounceScreenshotTest_ScrollContainer.m +com_codenameone_examples_hellocodenameone_tests_TextAreaAlignmentScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TextFieldThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_TimeApiTest.m +com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_2.m +com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_3.m +com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_4.m +com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_UncoverHorizontalTransitionTest.m +com_codenameone_examples_hellocodenameone_tests_VPNDetectionAPITest.m +com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest_2_1.m +com_codenameone_examples_hellocodenameone_tests_ValidatorLightweightPickerScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_VectorMapDarkStyleScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_VectorMapMarkersScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_VectorMapScreenshotBaseTest.m +com_codenameone_examples_hellocodenameone_tests_VectorMapScreenshotBaseTest_1.m +com_codenameone_examples_hellocodenameone_tests_VectorMapShapesScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest_1.m +com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest_1_1.m +com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest_2.m +com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest.m +com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_1.m +com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_2.m +com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_3.m +com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_4.m +com_codenameone_examples_hellocodenameone_tests_VisionOnDeviceApiTest.m +com_codenameone_examples_hellocodenameone_tests_VisionOnDeviceApiTest_1.m +com_codenameone_examples_hellocodenameone_tests_VisionOnDeviceApiTest_2.m +com_codenameone_examples_hellocodenameone_tests_WindowDialogTest.m +com_codenameone_examples_hellocodenameone_tests_WindowDialogTest_1.m +com_codenameone_examples_hellocodenameone_tests_WindowEditingTest.m +com_codenameone_examples_hellocodenameone_tests_WindowGraphicsTest.m +com_codenameone_examples_hellocodenameone_tests_WindowGraphicsTest_1.m +com_codenameone_examples_hellocodenameone_tests_WindowHostTest.m +com_codenameone_examples_hellocodenameone_tests_WindowHostTest_1.m +com_codenameone_examples_hellocodenameone_tests_WindowHostTest_2.m +com_codenameone_examples_hellocodenameone_tests_WindowHostTest_3.m +com_codenameone_examples_hellocodenameone_tests_WindowHostTest_3_1.m +com_codenameone_examples_hellocodenameone_tests_WindowHostTest_4.m +com_codenameone_examples_hellocodenameone_tests_WindowLayoutTest.m +com_codenameone_examples_hellocodenameone_tests_WindowModalTest.m +com_codenameone_examples_hellocodenameone_tests_WindowModalTest_1.m +com_codenameone_examples_hellocodenameone_tests_WindowModalTest_2.m +com_codenameone_examples_hellocodenameone_tests_WindowModalTest_3.m +com_codenameone_examples_hellocodenameone_tests_WindowOverlayTest.m +com_codenameone_examples_hellocodenameone_tests_WindowOverlayTest_1.m +com_codenameone_examples_hellocodenameone_tests_WindowScrollTest.m +com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest.m +com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_1.m +com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_2.m +com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_3.m +com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_4.m +com_codenameone_examples_hellocodenameone_tests_charts_AbstractChartScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartBarScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartBubbleScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartCombinedXYScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartCubicLineScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartDoughnutScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartLineScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartPieScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartRadarScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartRangeBarScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartRotatedScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartScatterScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartStackedBarScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartTimeChartScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_charts_ChartTransformScreenshotTest.m +com_codenameone_examples_hellocodenameone_tests_graphics_AffineScale.m +com_codenameone_examples_hellocodenameone_tests_graphics_Clip.m +com_codenameone_examples_hellocodenameone_tests_graphics_ClipUnderRotation.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawArc.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawGradient.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawGradientStops.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawImage.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawLine.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawRect.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawRoundRect.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawShape.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawString.m +com_codenameone_examples_hellocodenameone_tests_graphics_DrawStringDecorated.m +com_codenameone_examples_hellocodenameone_tests_graphics_EmptyClip.m +com_codenameone_examples_hellocodenameone_tests_graphics_FillArc.m +com_codenameone_examples_hellocodenameone_tests_graphics_FillPolygon.m +com_codenameone_examples_hellocodenameone_tests_graphics_FillRect.m +com_codenameone_examples_hellocodenameone_tests_graphics_FillRoundRect.m +com_codenameone_examples_hellocodenameone_tests_graphics_FillShape.m +com_codenameone_examples_hellocodenameone_tests_graphics_FillTriangle.m +com_codenameone_examples_hellocodenameone_tests_graphics_GaussianBlur.m +com_codenameone_examples_hellocodenameone_tests_graphics_InscribedTriangleGrid.m +com_codenameone_examples_hellocodenameone_tests_graphics_LargeStrokeDirtyClipTest.m +com_codenameone_examples_hellocodenameone_tests_graphics_LargeStrokeDirtyClipTest_LargeStrokeComponent.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_1.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_1_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_EscapeComponent.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_SolidComponent.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_lambda_0.m +com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_lambda_1.m +com_codenameone_examples_hellocodenameone_tests_graphics_Rotate.m +com_codenameone_examples_hellocodenameone_tests_graphics_Scale.m +com_codenameone_examples_hellocodenameone_tests_graphics_StrokeTest.m +com_codenameone_examples_hellocodenameone_tests_graphics_TileImage.m +com_codenameone_examples_hellocodenameone_tests_graphics_TransformCamera.m +com_codenameone_examples_hellocodenameone_tests_graphics_TransformPerspective.m +com_codenameone_examples_hellocodenameone_tests_graphics_TransformRotation.m +com_codenameone_examples_hellocodenameone_tests_graphics_TransformTranslation.m +java_io_ByteArrayInputStream.m +java_io_ByteArrayOutputStream.m +java_io_DataInput.m +java_io_DataInputStream.m +java_io_DataOutput.m +java_io_DataOutputStream.m +java_io_EOFException.m +java_io_File.m +java_io_FileInputStream.m +java_io_FileNotFoundException.m +java_io_FileOutputStream.m +java_io_FilterInputStream.m +java_io_FilterOutputStream.m +java_io_IOException.m +java_io_InputStream.m +java_io_InputStreamReader.m +java_io_NSLogOutputStream.m +java_io_OutputStream.m +java_io_OutputStreamWriter.m +java_io_PrintStream.m +java_io_Reader.m +java_io_Serializable.m +java_io_StandardInputStream.m +java_io_StringReader.m +java_io_StringWriter.m +java_io_UnsupportedEncodingException.m +java_io_Writer.m +java_lang_Appendable.m +java_lang_ArrayIndexOutOfBoundsException.m +java_lang_ArrayStoreException.m +java_lang_AssertionError.m +java_lang_AutoCloseable.m +java_lang_Boolean.m +java_lang_Byte.m +java_lang_CharSequence.m +java_lang_Character.m +java_lang_Character_CharacterCache.m +java_lang_Class.m +java_lang_ClassCastException.m +java_lang_ClassNotFoundException.m +java_lang_Cloneable.m +java_lang_Comparable.m +java_lang_Double.m +java_lang_Enum.m +java_lang_Error.m +java_lang_Exception.m +java_lang_Float.m +java_lang_IllegalAccessException.m +java_lang_IllegalArgumentException.m +java_lang_IllegalStateException.m +java_lang_IncompatibleClassChangeError.m +java_lang_IndexOutOfBoundsException.m +java_lang_InstantiationException.m +java_lang_Integer.m +java_lang_Integer_IntegerCache.m +java_lang_InterruptedException.m +java_lang_Iterable.m +java_lang_LinkageError.m +java_lang_Long.m +java_lang_Long_LongCache.m +java_lang_Math.m +java_lang_NegativeArraySizeException.m +java_lang_NoSuchFieldError.m +java_lang_NullPointerException.m +java_lang_Number.m +java_lang_NumberFormatException.m +java_lang_Object.m +java_lang_OutOfMemoryError.m +java_lang_Record.m +java_lang_Runnable.m +java_lang_Runtime.m +java_lang_RuntimeException.m +java_lang_Short.m +java_lang_Short_ShortCache.m +java_lang_StackOverflowError.m +java_lang_StackTraceElement.m +java_lang_String.m +java_lang_StringBuffer.m +java_lang_StringBuilder.m +java_lang_StringFormatter.m +java_lang_StringFormatter_1.m +java_lang_StringFormatter_Decimal.m +java_lang_StringFormatter_Spec.m +java_lang_StringIndexOutOfBoundsException.m +java_lang_StringToReal.m +java_lang_StringToReal_1.m +java_lang_StringToReal_StringExponentPair.m +java_lang_String_1.m +java_lang_System.m +java_lang_System_1.m +java_lang_Thread.m +java_lang_ThreadLocal.m +java_lang_Throwable.m +java_lang_UnsupportedOperationException.m +java_lang_VirtualMachineError.m +java_lang_ref_Reference.m +java_lang_ref_WeakReference.m +java_lang_reflect_Array.m +java_lang_reflect_Type.m +java_net_URI.m +java_net_URIHelper.m +java_net_URISyntaxException.m +java_nio_charset_Charset.m +java_nio_charset_Charset_1.m +java_nio_charset_Charset_SimpleCharset.m +java_text_DateFormat.m +java_text_DateFormatSymbols.m +java_text_Format.m +java_text_ParseException.m +java_text_SimpleDateFormat.m +java_time_Clock.m +java_time_Clock_1.m +java_time_Clock_FixedClock.m +java_time_DateTimeException.m +java_time_DateTimeSupport.m +java_time_Duration.m +java_time_Instant.m +java_time_LocalDate.m +java_time_LocalDateTime.m +java_time_LocalTime.m +java_time_OffsetDateTime.m +java_time_Period.m +java_time_ZoneId.m +java_time_ZoneOffset.m +java_time_ZonedDateTime.m +java_time_format_DateTimeFormatter.m +java_time_format_DateTimeFormatter_ParsedPatternResult.m +java_time_format_DateTimeParseException.m +java_time_temporal_TemporalAccessor.m +java_util_AbstractCollection.m +java_util_AbstractList.m +java_util_AbstractList_1.m +java_util_AbstractList_FullListIterator.m +java_util_AbstractList_SimpleListIterator.m +java_util_AbstractList_SubAbstractList.m +java_util_AbstractList_SubAbstractListRandomAccess.m +java_util_AbstractList_SubAbstractList_SubAbstractListIterator.m +java_util_AbstractMap.m +java_util_AbstractMap_1.m +java_util_AbstractMap_1_1.m +java_util_AbstractMap_2.m +java_util_AbstractMap_2_1.m +java_util_AbstractMap_SimpleImmutableEntry.m +java_util_AbstractSequentialList.m +java_util_AbstractSet.m +java_util_ArrayList.m +java_util_Arrays.m +java_util_Arrays_ArrayList.m +java_util_Calendar.m +java_util_Collection.m +java_util_Collections.m +java_util_Collections_1.m +java_util_Collections_EmptyList.m +java_util_Collections_EmptyMap.m +java_util_Collections_EmptySet.m +java_util_Collections_EmptySet_1.m +java_util_Collections_ReverseComparator.m +java_util_Collections_SetFromMap.m +java_util_Collections_SynchronizedCollection.m +java_util_Collections_SynchronizedList.m +java_util_Collections_SynchronizedRandomAccessList.m +java_util_Collections_SynchronizedSet.m +java_util_Collections_UnmodifiableCollection.m +java_util_Collections_UnmodifiableCollection_1.m +java_util_Collections_UnmodifiableList.m +java_util_Collections_UnmodifiableList_1.m +java_util_Collections_UnmodifiableMap.m +java_util_Collections_UnmodifiableMap_UnmodifiableEntrySet.m +java_util_Collections_UnmodifiableMap_UnmodifiableEntrySet_1.m +java_util_Collections_UnmodifiableMap_UnmodifiableEntrySet_UnmodifiableMapEntry.m +java_util_Collections_UnmodifiableRandomAccessList.m +java_util_Collections_UnmodifiableSet.m +java_util_Comparator.m +java_util_ConcurrentModificationException.m +java_util_Date.m +java_util_Deque.m +java_util_Dictionary.m +java_util_DuplicateFormatFlagsException.m +java_util_Enumeration.m +java_util_FormatFlagsConversionMismatchException.m +java_util_GregorianCalendar.m +java_util_HashMap.m +java_util_HashMap_1.m +java_util_HashMap_2.m +java_util_HashMap_AbstractMapIterator.m +java_util_HashMap_CompactEntry.m +java_util_HashMap_CompactEntrySet.m +java_util_HashMap_EntryIterator.m +java_util_HashMap_KeyIterator.m +java_util_HashMap_ValueIterator.m +java_util_HashSet.m +java_util_Hashtable.m +java_util_Hashtable_1.m +java_util_Hashtable_2.m +java_util_Hashtable_3.m +java_util_Hashtable_4.m +java_util_Hashtable_4_1.m +java_util_Hashtable_5.m +java_util_Hashtable_6.m +java_util_Hashtable_6_1.m +java_util_Hashtable_7.m +java_util_Hashtable_7_1.m +java_util_Hashtable_Entry.m +java_util_Hashtable_HashEnumIterator.m +java_util_Hashtable_HashIterator.m +java_util_IdentityHashMap.m +java_util_IdentityHashMap_1.m +java_util_IdentityHashMap_1_1.m +java_util_IdentityHashMap_2.m +java_util_IdentityHashMap_2_1.m +java_util_IdentityHashMap_IdentityHashMapEntry.m +java_util_IdentityHashMap_IdentityHashMapEntrySet.m +java_util_IdentityHashMap_IdentityHashMapEntrySet_1.m +java_util_IdentityHashMap_IdentityHashMapIterator.m +java_util_IllegalFormatArgumentIndexException.m +java_util_IllegalFormatCodePointException.m +java_util_IllegalFormatConversionException.m +java_util_IllegalFormatException.m +java_util_IllegalFormatFlagsException.m +java_util_IllegalFormatPrecisionException.m +java_util_IllegalFormatWidthException.m +java_util_Iterator.m +java_util_LinkedHashMap.m +java_util_LinkedHashSet.m +java_util_LinkedList.m +java_util_LinkedList_Link.m +java_util_LinkedList_LinkIterator.m +java_util_List.m +java_util_ListIterator.m +java_util_Locale.m +java_util_Map.m +java_util_MapEntry.m +java_util_MapEntry_Type.m +java_util_Map_Entry.m +java_util_MissingFormatArgumentException.m +java_util_MissingFormatWidthException.m +java_util_NavigableMap.m +java_util_NavigableSet.m +java_util_NoSuchElementException.m +java_util_Observable.m +java_util_Observer.m +java_util_Queue.m +java_util_Random.m +java_util_RandomAccess.m +java_util_Set.m +java_util_SimpleTimeZone.m +java_util_SortedMap.m +java_util_SortedSet.m +java_util_StringTokenizer.m +java_util_TimeZone.m +java_util_TimeZone_1.m +java_util_TimeZone_2.m +java_util_Timer.m +java_util_TimerTask.m +java_util_Timer_T.m +java_util_TreeMap.m +java_util_TreeMap_1.m +java_util_TreeMap_2.m +java_util_TreeMap_3.m +java_util_TreeMap_AbstractMapIterator.m +java_util_TreeMap_AbstractSubMapIterator.m +java_util_TreeMap_AscendingSubMap.m +java_util_TreeMap_AscendingSubMapEntryIterator.m +java_util_TreeMap_AscendingSubMapEntrySet.m +java_util_TreeMap_AscendingSubMapIterator.m +java_util_TreeMap_AscendingSubMapKeyIterator.m +java_util_TreeMap_AscendingSubMapKeySet.m +java_util_TreeMap_BoundedEntryIterator.m +java_util_TreeMap_BoundedKeyIterator.m +java_util_TreeMap_BoundedMapIterator.m +java_util_TreeMap_BoundedValueIterator.m +java_util_TreeMap_Entry.m +java_util_TreeMap_NavigableSubMap.m +java_util_TreeMap_Node.m +java_util_TreeMap_SubMap.m +java_util_TreeMap_SubMapEntrySet.m +java_util_TreeMap_SubMapKeySet.m +java_util_TreeMap_SubMapValuesCollection.m +java_util_TreeMap_TreeMapEntry.m +java_util_TreeMap_UnboundedEntryIterator.m +java_util_TreeMap_UnboundedKeyIterator.m +java_util_TreeMap_UnboundedValueIterator.m +java_util_TreeSet.m +java_util_UnknownFormatConversionException.m +java_util_Vector.m +java_util_Vector_1.m +java_util_concurrent_atomic_AtomicBoolean.m +java_util_concurrent_atomic_AtomicInteger.m +java_util_concurrent_atomic_AtomicReference.m +java_util_function_BiConsumer.m +java_util_function_BiFunction.m +java_util_function_BinaryOperator.m +java_util_function_Consumer.m +java_util_function_Function.m +java_util_function_Predicate.m +java_util_function_Supplier.m +java_util_function_UnaryOperator.m +java_util_stream_BaseStream.m +java_util_stream_Collector.m +java_util_stream_Collectors.m +java_util_stream_Collectors_1.m +java_util_stream_Collectors_1_1.m +java_util_stream_Collectors_1_2.m +java_util_stream_Collectors_1_4.m +java_util_stream_Collectors_2.m +java_util_stream_Collectors_2_1.m +java_util_stream_Collectors_2_2.m +java_util_stream_Collectors_2_4.m +java_util_stream_Stream.m +java_util_stream_StreamImpl.m +kotlin_Unit.m +kotlin_jvm_internal_Intrinsics.m +nativeMethods.m +native_com_codenameone_examples_hellocodenameone_Base64NativeImplCodenameOne.m +native_com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeImplCodenameOne.m +native_com_codenameone_examples_hellocodenameone_LocalNotificationNativeImplCodenameOne.m +native_com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeImplCodenameOne.m +native_com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeImplCodenameOne.m +native_com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImplCodenameOne.m diff --git a/scripts/native-warnings/parser-fixture.log b/scripts/native-warnings/parser-fixture.log index f10bf1576cd..ac816fc9aaa 100644 --- a/scripts/native-warnings/parser-fixture.log +++ b/scripts/native-warnings/parser-fixture.log @@ -55,3 +55,29 @@ ld: warning: object file was built for newer iOS version than being linked # a diagnostic; if either matched, every warning would be counted twice. 1502 | JAVA_OBJECT locals_3_; | ^ + +# --------------------------------------------------------------------------- +# Splits observed in a real iOS build log (92,129 warnings, ~18 split lines). +# xcodebuild's output reaches the log through a pipe and a long diagnostic can +# arrive broken at an arbitrary byte. Three shapes, all found in real output: + +# 11. Split inside the PATH. Alone, the second line names a file that does not +# exist and belongs to nobody; joined, it is com_codename1_ui_Display.m. +/tmp/proj/HelloApp-src/watch-src/com_c +odename1_ui_Display.m:5646:5: warning: unused variable 'SP' [-Wunused-variable] + +# 12. Split inside the MESSAGE. The first line parses on its own, which is worse +# than not parsing: it yields the message shape "unuse" and a baseline row that +# could never match again. +/tmp/proj/HelloApp-src/com_codename1_ui_Form.m:912:9: warning: unuse +d variable 'methodBlockOffset' [-Wunused-variable] + +# 13. Bytes LOST, not merely split -- the path and location are gone outright, so +# nothing can put this back. It must be counted as lost rather than attributed to +# the toolchain, and never baselined: a row keyed on no file can never recur. +warning: unused variable 'currentOffset' [-Wunused-variable] + +# 14. A genuine fileless build-system warning, which looks similar and must NOT be +# treated as truncation. It carries no [-Wflag], because clang flags belong to +# file-scoped diagnostics -- that is what separates the two. +warning: Skipping duplicate build file in Compile Sources build phase diff --git a/scripts/run-ios-ui-tests.sh b/scripts/run-ios-ui-tests.sh index a3a17013657..210453ec129 100755 --- a/scripts/run-ios-ui-tests.sh +++ b/scripts/run-ios-ui-tests.sh @@ -759,22 +759,40 @@ COMPILE_END=$(date +%s) COMPILATION_TIME=$((COMPILE_END - COMPILE_START)) ri_log "Compilation time: ${COMPILATION_TIME}s" -# Attribute this build's warnings to whoever owns the code. Report-only for now: -# the census has to produce the first honest numbers before any baseline can be -# frozen from them. The tool exits 2 by itself if this build did not compile -# everything, so an incremental build cannot quietly report a small number. +# Attribute this build's warnings to whoever owns the code and hold the result +# against the leg's baseline. A new warning kind fails here; so does a baselined +# one that has stopped reproducing, which is what keeps the file from drifting +# into a description of a build nobody runs. +# +# --probe re-runs the whole chain with one synthetic warning injected and asserts +# it comes back as new. That is what catches this gate going blind -- a missing +# manifest, a wrong baseline path, everything silently bucketed as vendored -- on +# the day it breaks rather than the day someone notices it never fired. +# +# The tool exits 2 on its own if this build compiled less than the one the +# baseline came from, so an incremental build cannot quietly report a small +# number and pass. if [ "${CN1_WARNING_CENSUS:-0}" = "1" ]; then CN1_WARNING_MANIFEST="${CN1_WARNING_MANIFEST:-$ARTIFACTS_DIR/cn1-source-manifest.txt}" - if [ -f "$CN1_WARNING_MANIFEST" ]; then - "$REPO_ROOT/scripts/check-native-warnings.sh" \ - --leg "${CN1_WARNING_LEG:-ios-sim-debug}" \ - --log "$BUILD_LOG" \ - --manifest "$CN1_WARNING_MANIFEST" \ - --json "$ARTIFACTS_DIR/native-warnings.json" \ - --report-only || ri_log "STAGE:WARNING_CENSUS_FAILED" - else - ri_log "Warning census requested but no manifest at $CN1_WARNING_MANIFEST" + if [ ! -f "$CN1_WARNING_MANIFEST" ]; then + ri_log "STAGE:WARNING_CENSUS_FAILED -> no manifest at $CN1_WARNING_MANIFEST" + exit 12 + fi + CN1_WARNING_ARGS=( + --leg "${CN1_WARNING_LEG:-ios-sim-debug}" + --log "$BUILD_LOG" + --manifest "$CN1_WARNING_MANIFEST" + ) + if ! "$REPO_ROOT/scripts/check-native-warnings.sh" "${CN1_WARNING_ARGS[@]}" \ + --json "$ARTIFACTS_DIR/native-warnings.json"; then + ri_log "STAGE:WARNING_CENSUS_FAILED -> see the census output above" + exit 12 + fi + if ! "$REPO_ROOT/scripts/check-native-warnings.sh" "${CN1_WARNING_ARGS[@]}" --probe > /dev/null; then + ri_log "STAGE:WARNING_CENSUS_FAILED -> the gate did not react to an injected warning" + exit 12 fi + ri_log "Warning census clean and the gate verified against an injected warning" fi BUILD_SETTINGS="$("$XCODEBUILD" "$XCODE_CONTAINER_FLAG" "$WORKSPACE_PATH" -scheme "$SCHEME" -sdk iphonesimulator -configuration Debug -showBuildSettings 2>/dev/null || true)" From eae4f3443fad4119c3de1e42b690b4429b513f84 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Wed, 9 Sep 2026 23:26:04 +0300 Subject: [PATCH 8/8] Repair the split shape that reddened the gate, and two holes it exposed The gate's first live run failed on generated|*||unused variable ?, which is the flake this was warned about rather than a new warning: a diagnostic split immediately before a space, leaving the continuation as " [-Wunused-variable]". Excluding every indented line as "probably a source snippet" excluded that too, so the diagnostic kept a truncated message and lost its flag. Only clang's actual snippet and caret shapes are excluded now; the join still has to complete a trailing flag, so nothing else can be glued on. Two runs of the same leg then produced identical baselines -- 157 keys, same set, from logs of 60,952 and 61,124 gating diagnostics. That is the property the ratchet needs and it is now measured rather than assumed. Getting there exposed two holes, both of the "gate reads nothing and reports success" kind this whole exercise exists to prevent: An unknown leg name resolved to no port trees, so every hand-written native failed to resolve, fell through to vendored, and left the gating set. The census still printed and still passed, having quietly stopped checking the code most worth checking -- 144 of 157 entries. It is a hard error now; a leg with no port sources says so with an empty list, as clean-target does. And the coverage ratchet compared against the sources the baselined build compiled, which couples the gate to something that legitimately moves: the two runs compiled 3,147 and 3,156 sources. Each compiled 100% of its OWN manifest, which is the invariant that actually holds, needs no stored state, and catches an incremental build just as well. Co-Authored-By: Claude Opus 5 (1M context) --- scripts/check-native-warnings.py | 125 +- .../coverage-ios-sim-debug.txt | 3157 ----------------- scripts/native-warnings/parser-fixture.log | 14 + 3 files changed, 65 insertions(+), 3231 deletions(-) delete mode 100644 scripts/native-warnings/coverage-ios-sim-debug.txt diff --git a/scripts/check-native-warnings.py b/scripts/check-native-warnings.py index 85af99d6c09..0c7e582ca43 100755 --- a/scripts/check-native-warnings.py +++ b/scripts/check-native-warnings.py @@ -182,8 +182,17 @@ def key(self): # Lines that legitimately follow a diagnostic and must never be glued onto it: # clang's source snippet and caret (both indented), the include-trace header, and # a build task announcement. +# Lines that legitimately follow a diagnostic and must never be glued onto it: +# clang's source snippet (" 5646 | code") and its caret (" | ^"), +# the include-trace header, and a build task announcement. +# +# Excluding ALL indented lines here was wrong, and cost a red build: a split can +# land immediately before a space, leaving the continuation as " [-Wunused-variable]", +# which is indented and is exactly the thing that needs joining. Only the shapes +# that are genuinely something else are excluded; the join is still only made when +# it completes a trailing flag, so nothing else can be glued on by accident. CONTINUATION_EXCLUDE_RE = re.compile( - r'^(?:\s|In file included from\b|[A-Z][A-Za-z]+\s+/|\[\s*\d)') + r'^(?:\s*(?:\d+\s*)?\||In file included from\b|[A-Z][A-Za-z]+\s+/|\[\s*\d)') def _parses(line): @@ -322,8 +331,18 @@ def port_index(leg): """ if leg in _PORT_INDEX: return _PORT_INDEX[leg] + if leg not in LEG_PORT_DIRS: + # Silently treating an unknown leg as "no port trees" would resolve every + # hand-written native to nothing, reclassify all of it as vendored, and drop + # it out of the gating set -- the census would still print and still pass, + # having quietly stopped checking the code most worth checking. A leg with + # genuinely no port sources says so with an empty list, as clean-target does. + raise SystemExit( + "unknown leg %r: add it to LEG_PORT_DIRS naming the port trees it builds " + "from (an empty list if it has none). Known legs: %s" + % (leg, ", ".join(sorted(LEG_PORT_DIRS)))) index = {} - for rel in LEG_PORT_DIRS.get(leg, []): + for rel in LEG_PORT_DIRS[leg]: base = os.path.join(ROOT, rel) if not os.path.isdir(base): continue @@ -401,66 +420,25 @@ def classify(diags, manifest, leg): return unattributed -def coverage_path(leg): - return os.path.join(BASELINE_DIR, "coverage-%s.txt" % leg) - - -def read_coverage(leg): - """The sources the build that wrote this leg's baseline actually compiled.""" - path = coverage_path(leg) - if not os.path.exists(path): - return None - names = set() - with open(path, encoding="utf-8") as fh: - for line in fh: - line = line.strip() - if line and not line.startswith("#"): - names.add(line) - return names +def check_completeness(manifest, compiled): + """Sources the manifest lists that this build did not compile. + An incremental build recompiles nothing and reports no warnings, which reads + exactly like a clean codebase; so does the documented xcodebuild failure where + a bad ARCHS override makes every target compile nothing while still copying + resources. Both are fatal to a census and both must be impossible to mistake + for progress. -def write_coverage(leg, compiled): - with open(coverage_path(leg), "w", encoding="utf-8") as fh: - fh.write("# Sources compiled by the build that produced baseline-%s.txt.\n" % leg) - fh.write("#\n") - fh.write("# The gate fails when a later run compiles FEWER of these. An incremental\n") - fh.write("# build recompiles nothing and reports no warnings, which reads exactly like\n") - fh.write("# a clean codebase; comparing against what was covered once makes that\n") - fh.write("# impossible to mistake for progress.\n") - fh.write("#\n") - fh.write("# Not the same as the manifest: the manifest lists every file in the\n") - fh.write("# generated project, and a build legitimately compiles a subset of it.\n") - fh.write("\n") - for name in sorted(compiled): - fh.write("%s\n" % name) - - -def check_completeness(manifest, compiled, leg): - """Whether this build covered as much as the one the baseline came from. - - Two different questions live here, and conflating them is what made the first - version of this unusable: - - - Did this build compile ANYTHING? An incremental build recompiles nothing and - reports no warnings; so does the documented xcodebuild failure where a bad - ARCHS override makes every target compile nothing while still copying - resources. Both are indistinguishable from a clean codebase, and both are - fatal to a census. - - Did it compile everything the manifest lists? No, and it should not have to. - The manifest names every file in the generated project, and a target - legitimately builds a subset -- a .metal goes through a different task, a - source can be excluded from the target. Failing on that would be demanding - the wrong invariant. - - So the ratchet is on COVERAGE, measured against the build that wrote the - baseline. It is exact, needs no threshold, and needs nobody to enumerate which - files a target happens to include. + Measured against the manifest from the SAME build, deliberately. An earlier + version compared against the set of sources the baselined build compiled, and + two real runs of the same leg compiled 3147 and 3156 sources -- the app's + translated surface moves a little between runs, so a cross-run comparison + couples the gate to something that legitimately changes. Each of those runs + compiled 100% of its own manifest, which is the invariant that actually holds + and the one worth enforcing. """ expected = {n for n in manifest if n.endswith(SOURCE_EXTS)} - never_compiled = sorted(expected - set(compiled)) - previous = read_coverage(leg) - regressed = sorted(previous - set(compiled)) if previous else [] - return never_compiled, sorted(expected), regressed + return sorted(expected - set(compiled)), sorted(expected) def baseline_path(leg): @@ -617,6 +595,11 @@ def self_test(): # A real fileless build-system warning, kept. ("", 0, 0, "", "Skipping duplicate build file in Compile Sources build phase"), + # Rejoined across an INDENTED continuation. Unjoined this keeps a truncated + # message and loses its flag, which is what reddened CI once. + ("com_codename1_ui_Button.m", 77, 9, "-Wunused-variable", "unused variable ?"), + # Genuinely unflagged, and its snippet/caret must NOT have been glued on. + ("cn1_globals.m", 42, 3, "", "implicit declaration of function ?"), } problems = [] for extra in sorted(got - expected): @@ -731,30 +714,26 @@ def main(): diags, compiled, lost = parse_log(text) - never_compiled, expected, regressed = check_completeness(manifest, compiled, args.leg) + never_compiled, expected = check_completeness(manifest, compiled) if not args.allow_partial: if not compiled: print("FAIL: this log records no compilation at all, so an empty warning list " "means nothing. A build that compiles nothing while still copying " "resources looks exactly like this.", file=sys.stderr) return 2 - if regressed: - print("FAIL: %d source(s) that the baselined build compiled were not compiled " - "by this one, so the census undercounts and a warning could disappear " - "without being fixed. Re-run against a cold build.\n %s%s" - % (len(regressed), "\n ".join(regressed[:40]), - "\n ..." if len(regressed) > 40 else ""), file=sys.stderr) + if never_compiled: + print("FAIL: %d of the %d sources in this build's own manifest were never " + "compiled, so the census undercounts. Either the build was incremental " + "-- re-run it cold -- or a source has been excluded from the target, " + "in which case say so here rather than letting the count drift.\n %s%s" + % (len(never_compiled), len(expected), "\n ".join(never_compiled[:40]), + "\n ..." if len(never_compiled) > 40 else ""), file=sys.stderr) return 2 if lost: print("note: %d diagnostic(s) lost their file to log truncation and are not " "attributed to anyone; they are reported here and never baselined." % lost) - print("coverage: %d source(s) compiled; %d of the %d in the manifest were not built by " - "this target" % (len(compiled), len(never_compiled), len(expected))) - if never_compiled: - shown = ", ".join(never_compiled[:20]) - if len(never_compiled) > 20: - shown += ", ... (%d more)" % (len(never_compiled) - 20) - print(" not built by this target: %s" % shown) + print("coverage: %d source(s) compiled, covering all %d in this build's manifest" + % (len(compiled), len(expected))) unattributed = classify(diags, manifest, args.leg) if unattributed: @@ -779,9 +758,7 @@ def main(): if args.write_baseline: n = write_baseline(args.leg, diags, "leg: %s\nlog: %s" % (args.leg, os.path.basename(args.log))) - write_coverage(args.leg, compiled) print("wrote %d baseline entries to %s" % (n, baseline_path(args.leg))) - print("wrote %d covered sources to %s" % (len(compiled), coverage_path(args.leg))) return 0 gating = [d for d in diags if d.group in GATING_GROUPS] diff --git a/scripts/native-warnings/coverage-ios-sim-debug.txt b/scripts/native-warnings/coverage-ios-sim-debug.txt deleted file mode 100644 index f1f6488f955..00000000000 --- a/scripts/native-warnings/coverage-ios-sim-debug.txt +++ /dev/null @@ -1,3157 +0,0 @@ -# Sources compiled by the build that produced baseline-ios-sim-debug.txt. -# -# The gate fails when a later run compiles FEWER of these. An incremental -# build recompiles nothing and reports no warnings, which reads exactly like -# a clean codebase; comparing against what was covered once makes that -# impossible to mistake for progress. -# -# Not the same as the manifest: the manifest lists every file in the -# generated project, and a build legitimately compiles a subset of it. - -AudioPlayer.m -BlurRegion.m -CN1AR.m -CN1AppleMapKit.m -CN1AppleSignIn.m -CN1AudioUnit.m -CN1Bluetooth.m -CN1CGGraphics.m -CN1Call.m -CN1Camera.m -CN1CrashProtection.m -CN1Crypto.m -CN1DragAndDrop.m -CN1ES1compat.m -CN1ES2compat.m -CN1GL3D.m -CN1Health.m -CN1Inference.m -CN1IntentHost.m -CN1JailbreakDetector.m -CN1Language.m -CN1MacWindows.m -CN1MetalGlyphAtlas.m -CN1MetalPipelineCache.m -CN1Metalcompat.m -CN1Nearby.m -CN1OidcBrowser.m -CN1SmartHome.m -CN1SoundPool.m -CN1TapGestureRecognizer.m -CN1TextInputView.m -CN1UITextField.m -CN1UITextView.m -CN1VideoIO.m -CN1Vision.m -CN1Vpn.m -CN1WatchBootstrap.m -CN1WatchConnectivity.m -CN1WatchHost.m -CN1WatchRenderingView.m -CN1WatchRuntime.m -CN1WatchViewController.m -CN1WebAuthn.m -ClearRect.m -ClipRect.m -CodenameOne_CarPlaySceneDelegate.m -CodenameOne_GLAppDelegate.m -CodenameOne_GLSceneDelegate.m -CodenameOne_GLViewController.m -Curve.c -Dasher.c -DrawGradient.m -DrawGradientTextureCache.m -DrawImage.m -DrawLine.m -DrawMultiStopGradient.m -DrawPath.m -DrawRect.m -DrawString.m -DrawStringTextureCache.m -DrawTextureAlphaMask.m -EAGLView.m -ExecutableOp.m -FacebookImpl.m -FillPolygon.m -FillRect.m -GLUIImage.m -GoogleConnectImpl.m -HeadphonesDetector.m -Helpers.c -IOSNative.m -IOSSimd.m -METALView.m -NetworkConnectionImpl.m -PaintOp.m -RadialGradientPaint.m -Renderer.c -ResetAffine.m -Rotate.m -Scale.m -SetTransform.m -SocketImpl.m -Stroker.c -TFLCommonUtil.mm -TFLCoreMLDelegate.m -TFLDelegate.m -TFLErrorUtil.m -TFLInterpreter.mm -TFLInterpreterOptions.m -TFLQuantizationParameters.m -TFLSignatureRunner.mm -TFLTensor.m -TileImage.m -Transformer.c -UIWebViewEventDelegate.m -WebSocketImpl.m -cn1_class_method_index.m -cn1_debugger.m -cn1_debugger_objects.c -cn1_globals.m -cn1_sqlite3.c -cn1_virtual_thread.c -cn1_virtual_thread_asm.S -cn1app_IntentBootstrap.m -com_bench_CommonWorkloads.m -com_bench_CommonWorkloads_Node.m -com_codename1_ads_AbstractFullScreenAd.m -com_codename1_ads_AbstractFullScreenAd_1.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_1.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_2.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_3.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_4.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_5.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_6.m -com_codename1_ads_AbstractFullScreenAd_Dispatcher_7.m -com_codename1_ads_AdCallback.m -com_codename1_ads_AdConfig.m -com_codename1_ads_AdError.m -com_codename1_ads_AdFormat.m -com_codename1_ads_AdListener.m -com_codename1_ads_AdManager.m -com_codename1_ads_AdRequest.m -com_codename1_ads_BannerAd.m -com_codename1_ads_BannerAd_1.m -com_codename1_ads_BannerAd_Dispatcher.m -com_codename1_ads_BannerAd_Dispatcher_1.m -com_codename1_ads_BannerAd_Dispatcher_2.m -com_codename1_ads_BannerAd_Dispatcher_3.m -com_codename1_ads_BannerAd_Dispatcher_4.m -com_codename1_ads_NativeAd.m -com_codename1_ads_NativeAdLoader.m -com_codename1_ads_NativeAdLoader_1.m -com_codename1_ads_NativeAdLoader_2.m -com_codename1_ads_NativeAdLoader_2_1.m -com_codename1_ads_NativeAdLoader_3.m -com_codename1_ads_NativeAdLoader_3_1.m -com_codename1_ads_OnUserEarnedRewardListener.m -com_codename1_ads_RewardItem.m -com_codename1_ads_ServerSideVerificationOptions.m -com_codename1_ads_mock_MockAdProvider.m -com_codename1_ads_mock_MockAdProvider_MockBanner.m -com_codename1_ads_mock_MockAdProvider_MockBannerSession.m -com_codename1_ads_mock_MockAdProvider_MockFullScreen.m -com_codename1_ads_spi_AdConsentController.m -com_codename1_ads_spi_AdProvider.m -com_codename1_ads_spi_AdSessionCallback.m -com_codename1_ads_spi_BannerAdSession.m -com_codename1_ads_spi_FullScreenAdSession.m -com_codename1_ads_spi_NativeAdProvider.m -com_codename1_ai_ChatMessage.m -com_codename1_ai_MessagePart.m -com_codename1_ai_Role.m -com_codename1_ai_TextPart.m -com_codename1_ai_inference_InferenceException.m -com_codename1_ai_inference_InferenceOptions.m -com_codename1_ai_inference_InferenceOptions_Accelerator.m -com_codename1_ai_inference_InferenceSession.m -com_codename1_ai_inference_InferenceSession_1.m -com_codename1_ai_inference_InferenceSession_2.m -com_codename1_ai_inference_InferenceSession_SessionOpenResource.m -com_codename1_ai_inference_ModelSource.m -com_codename1_ai_inference_Tensor.m -com_codename1_ai_inference_TensorInfo.m -com_codename1_ai_inference_TensorType.m -com_codename1_ai_inference_Tensor_1.m -com_codename1_ai_language_LanguageBackend.m -com_codename1_ai_language_LanguageBackends.m -com_codename1_ai_language_LanguageBackends_1.m -com_codename1_ai_language_LanguageBackends_Named.m -com_codename1_ai_language_LanguageCandidate.m -com_codename1_ai_language_LanguageIdentifier.m -com_codename1_ai_language_LanguageIdentifier_1.m -com_codename1_ai_language_LanguageIdentifier_Session.m -com_codename1_ai_language_LanguageIdentifier_Session_1.m -com_codename1_ai_language_LanguageOptions.m -com_codename1_ai_language_LanguageSession.m -com_codename1_ai_language_LanguageSession_1.m -com_codename1_ai_language_LanguageSession_2.m -com_codename1_ai_language_LanguageSession_Completion.m -com_codename1_ai_language_LanguageSession_Operation.m -com_codename1_ai_language_LanguageSession_OperationResource.m -com_codename1_ai_language_SmartReply.m -com_codename1_ai_language_SmartReplyMessage.m -com_codename1_ai_language_SmartReply_1.m -com_codename1_ai_language_SmartReply_Session.m -com_codename1_ai_language_SmartReply_Session_1.m -com_codename1_ai_language_Translator.m -com_codename1_ai_language_Translator_1.m -com_codename1_ai_language_Translator_Session.m -com_codename1_ai_language_Translator_Session_1.m -com_codename1_ai_vision_AbstractVisionAnalyzer.m -com_codename1_ai_vision_AbstractVisionAnalyzer_AnalysisResource.m -com_codename1_ai_vision_AbstractVisionAnalyzer_AnalysisResource_1.m -com_codename1_ai_vision_AbstractVisionAnalyzer_AnalysisResource_2.m -com_codename1_ai_vision_Barcode.m -com_codename1_ai_vision_BarcodeScanner.m -com_codename1_ai_vision_DocumentScanResult.m -com_codename1_ai_vision_DocumentScanner.m -com_codename1_ai_vision_Face.m -com_codename1_ai_vision_FaceDetector.m -com_codename1_ai_vision_ImageLabel.m -com_codename1_ai_vision_ImageLabeler.m -com_codename1_ai_vision_Pose.m -com_codename1_ai_vision_PoseDetector.m -com_codename1_ai_vision_Pose_Landmark.m -com_codename1_ai_vision_SegmentationMask.m -com_codename1_ai_vision_SelfieSegmenter.m -com_codename1_ai_vision_TextRecognitionResult.m -com_codename1_ai_vision_TextRecognitionResult_TextBlock.m -com_codename1_ai_vision_TextRecognizer.m -com_codename1_ai_vision_TextScript.m -com_codename1_ai_vision_VisionAnalyzer.m -com_codename1_ai_vision_VisionBackend.m -com_codename1_ai_vision_VisionBackends.m -com_codename1_ai_vision_VisionBackends_1.m -com_codename1_ai_vision_VisionBackends_NamedBackend.m -com_codename1_ai_vision_VisionException.m -com_codename1_ai_vision_VisionFeature.m -com_codename1_ai_vision_VisionImage.m -com_codename1_ai_vision_VisionMetadata.m -com_codename1_ai_vision_VisionOptions.m -com_codename1_ai_vision_VisionPoint.m -com_codename1_ai_vision_VisionRect.m -com_codename1_analytics_Analytics.m -com_codename1_analytics_AnalyticsCapability.m -com_codename1_analytics_AnalyticsConsent.m -com_codename1_analytics_AnalyticsContext.m -com_codename1_analytics_AnalyticsCrashReport.m -com_codename1_analytics_AnalyticsEvent.m -com_codename1_analytics_AnalyticsEvent_Builder.m -com_codename1_analytics_AnalyticsProvider.m -com_codename1_analytics_ConsentMode.m -com_codename1_ar_AR.m -com_codename1_ar_ARAnchor.m -com_codename1_ar_ARAnchorEvent.m -com_codename1_ar_ARAnchorEvent_Kind.m -com_codename1_ar_ARAnchorListener.m -com_codename1_ar_ARCapabilities.m -com_codename1_ar_ARFaceAnchor.m -com_codename1_ar_ARFaceRegion.m -com_codename1_ar_ARHitResult.m -com_codename1_ar_ARHitResult_Type.m -com_codename1_ar_ARImageAnchor.m -com_codename1_ar_ARLightEstimate.m -com_codename1_ar_ARModel.m -com_codename1_ar_ARNode.m -com_codename1_ar_ARPlane.m -com_codename1_ar_ARPlaneDetection.m -com_codename1_ar_ARPlaneEvent.m -com_codename1_ar_ARPlaneEvent_Kind.m -com_codename1_ar_ARPlaneListener.m -com_codename1_ar_ARPlane_Type.m -com_codename1_ar_ARPose.m -com_codename1_ar_ARReferenceImage.m -com_codename1_ar_ARSession.m -com_codename1_ar_ARSessionOptions.m -com_codename1_ar_ARSession_1.m -com_codename1_ar_ARSession_Bridge.m -com_codename1_ar_ARSession_Bridge_1.m -com_codename1_ar_ARTrackingFailureReason.m -com_codename1_ar_ARTrackingListener.m -com_codename1_ar_ARTrackingMode.m -com_codename1_ar_ARTrackingState.m -com_codename1_ar_ARView.m -com_codename1_ar_AR_1.m -com_codename1_ar_AR_2.m -com_codename1_ar_AR_3.m -com_codename1_background_BackgroundFetch.m -com_codename1_background_BackgroundWorker.m -com_codename1_bluetooth_AdapterState.m -com_codename1_bluetooth_AdapterStateListener.m -com_codename1_bluetooth_Bluetooth.m -com_codename1_bluetooth_BluetoothDevice.m -com_codename1_bluetooth_BluetoothError.m -com_codename1_bluetooth_BluetoothException.m -com_codename1_bluetooth_BluetoothUuid.m -com_codename1_bluetooth_Bluetooth_1.m -com_codename1_bluetooth_gatt_GattCharacteristic.m -com_codename1_bluetooth_gatt_GattDescriptor.m -com_codename1_bluetooth_gatt_GattNotificationListener.m -com_codename1_bluetooth_gatt_GattService.m -com_codename1_bluetooth_gatt_GattStatus.m -com_codename1_bluetooth_le_AdvertisementData.m -com_codename1_bluetooth_le_BlePeripheral.m -com_codename1_bluetooth_le_BlePeripheral_1.m -com_codename1_bluetooth_le_BlePeripheral_19.m -com_codename1_bluetooth_le_BlePeripheral_20.m -com_codename1_bluetooth_le_BlePeripheral_5.m -com_codename1_bluetooth_le_BlePeripheral_6.m -com_codename1_bluetooth_le_BlePeripheral_Claiming.m -com_codename1_bluetooth_le_BlePeripheral_NoApply.m -com_codename1_bluetooth_le_BleScan.m -com_codename1_bluetooth_le_BluetoothLE.m -com_codename1_bluetooth_le_BluetoothLE_1.m -com_codename1_bluetooth_le_BluetoothLE_2.m -com_codename1_bluetooth_le_BluetoothLE_ScanRegistration.m -com_codename1_bluetooth_le_ConnectionEvent.m -com_codename1_bluetooth_le_ConnectionListener.m -com_codename1_bluetooth_le_ConnectionState.m -com_codename1_bluetooth_le_GattOperationQueue.m -com_codename1_bluetooth_le_GattOperationQueue_2.m -com_codename1_bluetooth_le_GattOperationQueue_Op.m -com_codename1_bluetooth_le_L2capChannel.m -com_codename1_bluetooth_le_L2capServer.m -com_codename1_bluetooth_le_ScanFilter.m -com_codename1_bluetooth_le_ScanListener.m -com_codename1_bluetooth_le_ScanMode.m -com_codename1_bluetooth_le_ScanResult.m -com_codename1_bluetooth_le_ScanSettings.m -com_codename1_bluetooth_le_server_BleAdvertisement.m -com_codename1_bluetooth_le_server_BleCentral.m -com_codename1_bluetooth_le_server_GattLocalCharacteristic.m -com_codename1_bluetooth_le_server_GattLocalDescriptor.m -com_codename1_bluetooth_le_server_GattReadRequest.m -com_codename1_bluetooth_le_server_GattServer.m -com_codename1_bluetooth_le_server_GattServerListener.m -com_codename1_bluetooth_le_server_GattServer_1.m -com_codename1_bluetooth_le_server_GattServer_2.m -com_codename1_bluetooth_le_server_GattServer_3.m -com_codename1_bluetooth_le_server_GattServer_4.m -com_codename1_bluetooth_le_server_GattServer_5.m -com_codename1_bluetooth_le_server_GattServer_6.m -com_codename1_bluetooth_le_server_GattServer_7.m -com_codename1_bluetooth_le_server_GattWriteRequest.m -com_codename1_calendar_CalendarAlarm.m -com_codename1_calendar_CalendarAlarm_Method.m -com_codename1_calendar_CalendarAttachment.m -com_codename1_calendar_CalendarAttendee.m -com_codename1_calendar_CalendarAttendee_Response.m -com_codename1_calendar_CalendarAttendee_Role.m -com_codename1_calendar_CalendarCapabilities.m -com_codename1_calendar_CalendarCapability.m -com_codename1_calendar_CalendarConference.m -com_codename1_calendar_CalendarDateTime.m -com_codename1_calendar_CalendarDateUtil.m -com_codename1_calendar_CalendarError.m -com_codename1_calendar_CalendarEvent.m -com_codename1_calendar_CalendarEvent_Availability.m -com_codename1_calendar_CalendarEvent_Privacy.m -com_codename1_calendar_CalendarEvent_Status.m -com_codename1_calendar_CalendarException.m -com_codename1_calendar_CalendarRecurrenceRule.m -com_codename1_calendar_CalendarRecurrenceRule_Frequency.m -com_codename1_calendar_CalendarSource.m -com_codename1_calendar_CalendarTask.m -com_codename1_calendar_ICalendarCodec.m -com_codename1_calendar_ICalendarCodec_Component.m -com_codename1_calendar_ICalendarCodec_Property.m -com_codename1_calendar_LocalCalendarSource.m -com_codename1_call_CallDirection.m -com_codename1_call_CallEndReason.m -com_codename1_call_CallError.m -com_codename1_call_CallException.m -com_codename1_call_CallHandle.m -com_codename1_call_CallHandleType.m -com_codename1_call_CallId.m -com_codename1_call_CallState.m -com_codename1_call_directory_CallDirectory.m -com_codename1_call_session_CallAction.m -com_codename1_call_session_CallActionListener.m -com_codename1_call_session_CallAudioRoute.m -com_codename1_call_session_CallAudioSession.m -com_codename1_call_session_CallSession.m -com_codename1_call_session_Calls.m -com_codename1_call_session_Calls_ActionEvent.m -com_codename1_call_session_Calls_ActionEvent_PendingStartCleanup.m -com_codename1_call_session_Calls_EndCleanup.m -com_codename1_call_session_Calls_MuteChange.m -com_codename1_call_session_Calls_StateChange.m -com_codename1_call_spi_CallBridge.m -com_codename1_call_voip_PushedCall.m -com_codename1_call_voip_VoipPush.m -com_codename1_call_voip_VoipPushListener.m -com_codename1_call_voip_VoipPush_Delivery.m -com_codename1_camera_Camera.m -com_codename1_camera_CameraFacing.m -com_codename1_camera_CameraFrame.m -com_codename1_camera_CameraInfo.m -com_codename1_camera_CameraSession.m -com_codename1_camera_CameraSessionOptions.m -com_codename1_camera_CameraView.m -com_codename1_camera_Camera_1.m -com_codename1_camera_CapturedPhoto.m -com_codename1_camera_FrameFormat.m -com_codename1_camera_FrameListener.m -com_codename1_camera_PhotoCaptureOptions.m -com_codename1_camera_ScaleType.m -com_codename1_capture_VideoCaptureConstraints.m -com_codename1_capture_VideoCaptureConstraints_Compiler.m -com_codename1_car_Car.m -com_codename1_car_CarAction.m -com_codename1_car_CarActionListener.m -com_codename1_car_CarActionStrip.m -com_codename1_car_CarApplication.m -com_codename1_car_CarColor.m -com_codename1_car_CarConnectionListener.m -com_codename1_car_CarContext.m -com_codename1_car_CarGridItem.m -com_codename1_car_CarGridTemplate.m -com_codename1_car_CarListTemplate.m -com_codename1_car_CarMessageTemplate.m -com_codename1_car_CarNavigationTemplate.m -com_codename1_car_CarNowPlayingTemplate.m -com_codename1_car_CarPaneTemplate.m -com_codename1_car_CarRow.m -com_codename1_car_CarScreen.m -com_codename1_car_CarSection.m -com_codename1_car_CarSurfaceCallback.m -com_codename1_car_CarTemplate.m -com_codename1_car_Car_1.m -com_codename1_car_Car_2.m -com_codename1_car_spi_CarBridge.m -com_codename1_charts_ChartComponent.m -com_codename1_charts_ChartComponent_1.m -com_codename1_charts_ChartComponent_BBox.m -com_codename1_charts_ChartUtil.m -com_codename1_charts_compat_Canvas.m -com_codename1_charts_compat_GradientDrawable.m -com_codename1_charts_compat_GradientDrawable_Orientation.m -com_codename1_charts_compat_Paint.m -com_codename1_charts_compat_Paint_Style.m -com_codename1_charts_compat_PathMeasure.m -com_codename1_charts_models_AreaSeries.m -com_codename1_charts_models_CategorySeries.m -com_codename1_charts_models_MultipleCategorySeries.m -com_codename1_charts_models_Point.m -com_codename1_charts_models_RangeCategorySeries.m -com_codename1_charts_models_SeriesSelection.m -com_codename1_charts_models_TimeSeries.m -com_codename1_charts_models_XYEntry.m -com_codename1_charts_models_XYMultipleSeriesDataset.m -com_codename1_charts_models_XYSeries.m -com_codename1_charts_models_XYSeries_IndexXYMap.m -com_codename1_charts_models_XYValueSeries.m -com_codename1_charts_renderers_BasicStroke.m -com_codename1_charts_renderers_DefaultRenderer.m -com_codename1_charts_renderers_SimpleSeriesRenderer.m -com_codename1_charts_renderers_XYMultipleSeriesRenderer.m -com_codename1_charts_renderers_XYMultipleSeriesRenderer_Orientation.m -com_codename1_charts_renderers_XYSeriesRenderer.m -com_codename1_charts_renderers_XYSeriesRenderer_FillOutsideLine.m -com_codename1_charts_renderers_XYSeriesRenderer_FillOutsideLine_Type.m -com_codename1_charts_util_ColorUtil.m -com_codename1_charts_util_ColorUtil_IColor.m -com_codename1_charts_util_MathHelper.m -com_codename1_charts_util_NumberFormat.m -com_codename1_charts_views_AbstractChart.m -com_codename1_charts_views_BarChart.m -com_codename1_charts_views_BarChart_Type.m -com_codename1_charts_views_BubbleChart.m -com_codename1_charts_views_ClickableArea.m -com_codename1_charts_views_CombinedXYChart.m -com_codename1_charts_views_CombinedXYChart_XYCombinedChartDef.m -com_codename1_charts_views_CubicLineChart.m -com_codename1_charts_views_DoughnutChart.m -com_codename1_charts_views_LineChart.m -com_codename1_charts_views_PieChart.m -com_codename1_charts_views_PieMapper.m -com_codename1_charts_views_PieSegment.m -com_codename1_charts_views_PkgUtils.m -com_codename1_charts_views_PointStyle.m -com_codename1_charts_views_RadarChart.m -com_codename1_charts_views_RangeBarChart.m -com_codename1_charts_views_RangeStackedBarChart.m -com_codename1_charts_views_RoundChart.m -com_codename1_charts_views_ScatterChart.m -com_codename1_charts_views_TimeChart.m -com_codename1_charts_views_XYChart.m -com_codename1_cloud_BindTarget.m -com_codename1_codescan_CodeScanner.m -com_codename1_codescan_ScanResult.m -com_codename1_compat_java_util_Objects.m -com_codename1_components_Accordion.m -com_codename1_components_Accordion_AccordionContent.m -com_codename1_components_Accordion_AccordionContent_1.m -com_codename1_components_ChatBubble.m -com_codename1_components_ChatBubble_1.m -com_codename1_components_ChatBubble_2.m -com_codename1_components_ChatInput.m -com_codename1_components_ChatInput_1.m -com_codename1_components_ChatInput_2.m -com_codename1_components_ChatInput_3.m -com_codename1_components_ChatInput_4.m -com_codename1_components_ChatView.m -com_codename1_components_ChatView_1.m -com_codename1_components_ChatView_2.m -com_codename1_components_FileTree.m -com_codename1_components_FileTreeModel.m -com_codename1_components_FloatingActionButton.m -com_codename1_components_FloatingActionButton_CreatePopupContentActionListener.m -com_codename1_components_FloatingActionButton_ReleaseActionListener.m -com_codename1_components_ImageViewer.m -com_codename1_components_ImageViewer_1Listener.m -com_codename1_components_ImageViewer_AnimatePanX.m -com_codename1_components_ImageViewer_CropBox.m -com_codename1_components_InfiniteProgress.m -com_codename1_components_InteractionDialog.m -com_codename1_components_InteractionDialog_1.m -com_codename1_components_InteractionDialog_2.m -com_codename1_components_InteractionDialog_3.m -com_codename1_components_InteractionDialog_4.m -com_codename1_components_InteractionDialog_5.m -com_codename1_components_InteractionDialog_BlockingSleepRunnable.m -com_codename1_components_InteractionDialog_NativeCloseBridge.m -com_codename1_components_InteractionDialog_NativeShowingEndedBridge.m -com_codename1_components_InteractionDialog_TimeoutDispatch.m -com_codename1_components_InteractionDialog_TimeoutSchedule.m -com_codename1_components_MultiButton.m -com_codename1_components_SpanButton.m -com_codename1_components_SpanLabel.m -com_codename1_components_StickyHeaderContainer.m -com_codename1_components_StickyHeaderContainer_1.m -com_codename1_components_StickyHeaderContainer_ScrollContainer.m -com_codename1_components_StickyHeaderContainer_Section.m -com_codename1_components_StickyHeaderContainer_StickyHostContainer.m -com_codename1_components_StickyHeaderContainer_StickyOverlayLayout.m -com_codename1_components_Switch.m -com_codename1_components_SwitchThumbDroplet.m -com_codename1_components_SwitchThumbDroplet_Tokens.m -com_codename1_components_Switch_1.m -com_codename1_components_Switch_2.m -com_codename1_components_Switch_3.m -com_codename1_components_Switch_4.m -com_codename1_components_ToastBar.m -com_codename1_components_ToastBar_1.m -com_codename1_components_ToastBar_4.m -com_codename1_components_ToastBar_5.m -com_codename1_components_ToastBar_FlushAnimationCallback.m -com_codename1_components_ToastBar_Status.m -com_codename1_components_ToastBar_Status_1.m -com_codename1_components_ToastBar_Status_1_1.m -com_codename1_components_ToastBar_ToastBarComponent.m -com_codename1_components_ToastBar_ToastBarComponent_1.m -com_codename1_components_ToastBar_ToastBarHolder.m -com_codename1_contacts_Address.m -com_codename1_contacts_Contact.m -com_codename1_contacts_ContactPicker.m -com_codename1_continuity_AppState.m -com_codename1_continuity_Continuity.m -com_codename1_continuity_ContinuityListener.m -com_codename1_continuity_Continuity_1.m -com_codename1_continuity_Continuity_11.m -com_codename1_continuity_Continuity_2.m -com_codename1_continuity_Continuity_3.m -com_codename1_continuity_Continuity_3_1.m -com_codename1_continuity_Continuity_3_2.m -com_codename1_continuity_Continuity_4.m -com_codename1_continuity_Continuity_5.m -com_codename1_continuity_Continuity_5_1.m -com_codename1_continuity_Continuity_5_2.m -com_codename1_continuity_Continuity_6.m -com_codename1_continuity_Continuity_7.m -com_codename1_continuity_Continuity_8.m -com_codename1_continuity_Continuity_8_1.m -com_codename1_continuity_Continuity_9.m -com_codename1_continuity_Continuity_Callback.m -com_codename1_continuity_Continuity_Callback_1.m -com_codename1_continuity_StateCodec.m -com_codename1_continuity_StateProvider.m -com_codename1_continuity_StateRelay.m -com_codename1_continuity_spi_ContinuityBridge.m -com_codename1_continuity_spi_ContinuityCallback.m -com_codename1_continuity_sync_SyncedStore.m -com_codename1_continuity_sync_SyncedStoreListener.m -com_codename1_db_Cursor.m -com_codename1_db_CursorExt.m -com_codename1_db_Database.m -com_codename1_db_DatabaseConfig.m -com_codename1_db_DatabaseEncryptionException.m -com_codename1_db_ManagedKeys.m -com_codename1_db_Row.m -com_codename1_db_RowExt.m -com_codename1_documents_DocumentIndexSerializer.m -com_codename1_documents_DocumentNode.m -com_codename1_documents_DocumentProvider.m -com_codename1_documents_spi_DocumentProviderBridge.m -com_codename1_generated_svg_ClippedBadge.m -com_codename1_generated_svg_ColorMorph.m -com_codename1_generated_svg_GradientCircle.m -com_codename1_generated_svg_LogoText.m -com_codename1_generated_svg_LottiePulse.m -com_codename1_generated_svg_LottieSpinner.m -com_codename1_generated_svg_PathArrow.m -com_codename1_generated_svg_PulsingCircle.m -com_codename1_generated_svg_SVGRegistry.m -com_codename1_generated_svg_SpinnerAnimated.m -com_codename1_generated_svg_Star.m -com_codename1_generated_svg_WavePath.m -com_codename1_gpu_Camera.m -com_codename1_gpu_GltfLoader.m -com_codename1_gpu_GltfLoader_GltfImageModel.m -com_codename1_gpu_GltfLoader_GltfModel.m -com_codename1_gpu_GpuCapabilities.m -com_codename1_gpu_GraphicsDevice.m -com_codename1_gpu_IndexBuffer.m -com_codename1_gpu_Light.m -com_codename1_gpu_Material.m -com_codename1_gpu_Material_Type.m -com_codename1_gpu_Matrix4.m -com_codename1_gpu_Mesh.m -com_codename1_gpu_PrimitiveType.m -com_codename1_gpu_Primitives.m -com_codename1_gpu_Quaternion.m -com_codename1_gpu_RenderState.m -com_codename1_gpu_RenderState_BlendMode.m -com_codename1_gpu_RenderState_CullMode.m -com_codename1_gpu_RenderView.m -com_codename1_gpu_Renderer.m -com_codename1_gpu_Texture.m -com_codename1_gpu_Texture_Filter.m -com_codename1_gpu_Texture_Wrap.m -com_codename1_gpu_VertexAttribute.m -com_codename1_gpu_VertexAttribute_Usage.m -com_codename1_gpu_VertexBuffer.m -com_codename1_gpu_VertexFormat.m -com_codename1_health_BloodPressureSample.m -com_codename1_health_CategorySample.m -com_codename1_health_Health.m -com_codename1_health_HealthAccess.m -com_codename1_health_HealthAggregationStyle.m -com_codename1_health_HealthAnchor.m -com_codename1_health_HealthBackgroundListener.m -com_codename1_health_HealthBackgroundListenerFactory.m -com_codename1_health_HealthChangeBatch.m -com_codename1_health_HealthChangeListener.m -com_codename1_health_HealthConfigurationException.m -com_codename1_health_HealthDataKind.m -com_codename1_health_HealthDataType.m -com_codename1_health_HealthError.m -com_codename1_health_HealthException.m -com_codename1_health_HealthQuantity.m -com_codename1_health_HealthSample.m -com_codename1_health_HealthSource.m -com_codename1_health_HealthStore.m -com_codename1_health_HealthStore_2.m -com_codename1_health_HealthStore_3.m -com_codename1_health_HealthStore_4.m -com_codename1_health_HealthStore_5.m -com_codename1_health_HealthStore_6.m -com_codename1_health_HealthStore_AuthorizationFlowDone.m -com_codename1_health_HealthStore_ByStart.m -com_codename1_health_HealthStore_CancelTimer.m -com_codename1_health_HealthStore_CompleteOnEdt.m -com_codename1_health_HealthStore_FailTimedOut.m -com_codename1_health_HealthStore_PendingAuth.m -com_codename1_health_HealthStore_PostProcess.m -com_codename1_health_HealthStore_TimeoutTask.m -com_codename1_health_HealthSubscription.m -com_codename1_health_HealthTimeRange.m -com_codename1_health_HealthUnit.m -com_codename1_health_HealthUnitDimension.m -com_codename1_health_HealthWriteResult.m -com_codename1_health_Health_DefaultWorkouts.m -com_codename1_health_QuantitySample.m -com_codename1_health_RecordingMethod.m -com_codename1_health_SamplePage.m -com_codename1_health_SampleQuery.m -com_codename1_health_SeriesSample.m -com_codename1_health_SessionSample.m -com_codename1_health_SleepSample.m -com_codename1_health_SleepStage.m -com_codename1_health_SleepStageInterval.m -com_codename1_health_SubscriptionRequest.m -com_codename1_health_WorkoutActivityType.m -com_codename1_health_WorkoutSample.m -com_codename1_health_nutrition_Nutrient.m -com_codename1_health_nutrition_NutritionSample.m -com_codename1_health_workout_WorkoutConfiguration.m -com_codename1_health_workout_WorkoutLocationType.m -com_codename1_health_workout_WorkoutManager.m -com_codename1_health_workout_WorkoutSession.m -com_codename1_health_workout_WorkoutSessionState.m -com_codename1_home_Accessory.m -com_codename1_home_AccessoryCategory.m -com_codename1_home_AccessoryService.m -com_codename1_home_AirQualityLevel.m -com_codename1_home_AlarmState.m -com_codename1_home_ChargingState.m -com_codename1_home_DoorState.m -com_codename1_home_FanMode.m -com_codename1_home_HeatingCoolingMode.m -com_codename1_home_HomeAuthorizationStatus.m -com_codename1_home_HomeChangeListener.m -com_codename1_home_HomeConfigurationException.m -com_codename1_home_HomeError.m -com_codename1_home_HomeException.m -com_codename1_home_HomeRoom.m -com_codename1_home_HomeStructure.m -com_codename1_home_HomeStructureEvent.m -com_codename1_home_HomeStructureListener.m -com_codename1_home_HomeZone.m -com_codename1_home_LockState.m -com_codename1_home_PositionState.m -com_codename1_home_Scene.m -com_codename1_home_SceneAction.m -com_codename1_home_SceneType.m -com_codename1_home_ServiceType.m -com_codename1_home_SmartHome.m -com_codename1_home_SmartHome_1.m -com_codename1_home_SmartHome_ChunkJoin.m -com_codename1_home_SmartHome_ChunkPart.m -com_codename1_home_SmartHome_Gateway.m -com_codename1_home_SmartHome_IssueRead.m -com_codename1_home_SmartHome_IssueWrite.m -com_codename1_home_SmartHome_RunAfterStart.m -com_codename1_home_SmartHome_StructureDispatch.m -com_codename1_home_StructureChangeKind.m -com_codename1_home_Trait.m -com_codename1_home_TraitChangeBatch.m -com_codename1_home_TraitConstraint.m -com_codename1_home_TraitReadRequest.m -com_codename1_home_TraitReading.m -com_codename1_home_TraitSubscription.m -com_codename1_home_TraitUnit.m -com_codename1_home_TraitUnitDimension.m -com_codename1_home_TraitValue.m -com_codename1_home_TraitValueKind.m -com_codename1_home_TraitValue_1.m -com_codename1_home_TraitWrite.m -com_codename1_home_TraitWriteResult.m -com_codename1_home_commissioning_Commissioner.m -com_codename1_home_commissioning_CommissioningRequest.m -com_codename1_home_commissioning_CommissioningResult.m -com_codename1_home_commissioning_CommissioningStyle.m -com_codename1_home_commissioning_SetupPayload.m -com_codename1_home_spi_HomeBridge.m -com_codename1_impl_ARImpl.m -com_codename1_impl_ARImpl_EventSink.m -com_codename1_impl_AbstractDBCursor.m -com_codename1_impl_CameraImpl.m -com_codename1_impl_CodenameOneImplementation.m -com_codename1_impl_CodenameOneImplementation_1.m -com_codename1_impl_CodenameOneImplementation_2.m -com_codename1_impl_CodenameOneImplementation_3.m -com_codename1_impl_CodenameOneImplementation_4.m -com_codename1_impl_CodenameOneImplementation_5.m -com_codename1_impl_CodenameOneImplementation_ContactPickerDelivery.m -com_codename1_impl_CodenameOneImplementation_LegacyAccessPointNetworkType.m -com_codename1_impl_CodenameOneImplementation_RPush.m -com_codename1_impl_CodenameOneImplementation_SharedContentDispatch.m -com_codename1_impl_CodenameOneImplementation_TapjackingDispatch.m -com_codename1_impl_CodenameOneThread.m -com_codename1_impl_ImplementationFactory.m -com_codename1_impl_InferenceImpl.m -com_codename1_impl_JdkApiRewriteHelper.m -com_codename1_impl_LanguageImpl.m -com_codename1_impl_OpenGalleryFileTree.m -com_codename1_impl_OpenGalleryFileTree_1.m -com_codename1_impl_OpenGalleryFileTree_CreateNodeComponentRunnable.m -com_codename1_impl_PaintSurface.m -com_codename1_impl_PointerDragActivation.m -com_codename1_impl_SQLStatementSplitter.m -com_codename1_impl_SQLText.m -com_codename1_impl_VirtualKeyboardInterface.m -com_codename1_impl_VisionImpl.m -com_codename1_impl_WebSocketEventSink.m -com_codename1_impl_WebSocketImpl.m -com_codename1_impl_WindowManager.m -com_codename1_impl_async_EdtResult.m -com_codename1_impl_async_EdtResult_1.m -com_codename1_impl_async_EdtResult_2.m -com_codename1_impl_async_EdtResult_Deliver.m -com_codename1_impl_async_OneShot.m -com_codename1_impl_async_PendingMap.m -com_codename1_impl_call_CallRequests.m -com_codename1_impl_call_CallWire.m -com_codename1_impl_gpu_GpuImplementation.m -com_codename1_impl_health_HealthWire.m -com_codename1_impl_home_CommissioningGateway.m -com_codename1_impl_home_HomeWire.m -com_codename1_impl_home_HomeWire_1.m -com_codename1_impl_home_SubscriptionState.m -com_codename1_impl_home_SubscriptionState_Deliver.m -com_codename1_impl_home_SubscriptionState_Flush.m -com_codename1_impl_ios_CatalystWindowNative.m -com_codename1_impl_ios_DatabaseImpl.m -com_codename1_impl_ios_DatabaseImpl_CursorImpl.m -com_codename1_impl_ios_IOSARImpl.m -com_codename1_impl_ios_IOSARImpl_CompleteOnEdt.m -com_codename1_impl_ios_IOSBiometrics.m -com_codename1_impl_ios_IOSBiometrics_1.m -com_codename1_impl_ios_IOSBiometrics_2.m -com_codename1_impl_ios_IOSBleAdvertisement.m -com_codename1_impl_ios_IOSBleAdvertisement_1.m -com_codename1_impl_ios_IOSBlePeripheral.m -com_codename1_impl_ios_IOSBluetooth.m -com_codename1_impl_ios_IOSBluetoothLE.m -com_codename1_impl_ios_IOSBluetooth_PendingAdvertise.m -com_codename1_impl_ios_IOSBluetooth_PendingL2capServer.m -com_codename1_impl_ios_IOSBluetooth_PendingServer.m -com_codename1_impl_ios_IOSCalendarSource.m -com_codename1_impl_ios_IOSCallBridge.m -com_codename1_impl_ios_IOSCallCallbacks.m -com_codename1_impl_ios_IOSCameraImpl.m -com_codename1_impl_ios_IOSCameraImpl_1.m -com_codename1_impl_ios_IOSCameraImpl_2.m -com_codename1_impl_ios_IOSCameraImpl_3.m -com_codename1_impl_ios_IOSCarBridge.m -com_codename1_impl_ios_IOSCarBridge_Counter.m -com_codename1_impl_ios_IOSCarPlayCallbacks.m -com_codename1_impl_ios_IOSCarPlayCallbacks_1.m -com_codename1_impl_ios_IOSConnectivity.m -com_codename1_impl_ios_IOSConnectivity_1.m -com_codename1_impl_ios_IOSConnectivity_2.m -com_codename1_impl_ios_IOSConnectivity_4.m -com_codename1_impl_ios_IOSConnectivity_5.m -com_codename1_impl_ios_IOSContinuityBridge.m -com_codename1_impl_ios_IOSContinuityCallbacks.m -com_codename1_impl_ios_IOSContinuityCallbacks_1.m -com_codename1_impl_ios_IOSDeviceIntegrity.m -com_codename1_impl_ios_IOSDeviceIntegrity_1.m -com_codename1_impl_ios_IOSDeviceIntegrity_2.m -com_codename1_impl_ios_IOSDeviceIntegrity_3.m -com_codename1_impl_ios_IOSDeviceIntegrity_OneShotResource.m -com_codename1_impl_ios_IOSDeviceIntegrity_PendingRequest.m -com_codename1_impl_ios_IOSDocumentProviderBridge.m -com_codename1_impl_ios_IOSGLSurface.m -com_codename1_impl_ios_IOSGattServer.m -com_codename1_impl_ios_IOSGattServer_IOSBleCentral.m -com_codename1_impl_ios_IOSGattServer_IOSGattReadRequest.m -com_codename1_impl_ios_IOSGattServer_IOSGattWriteRequest.m -com_codename1_impl_ios_IOSGraphicsDevice.m -com_codename1_impl_ios_IOSGraphicsDevice_1.m -com_codename1_impl_ios_IOSHealth.m -com_codename1_impl_ios_IOSHealthStore.m -com_codename1_impl_ios_IOSHealthStore_ChangeRead.m -com_codename1_impl_ios_IOSHealthStore_TiedInstantRead.m -com_codename1_impl_ios_IOSHealth_Complete.m -com_codename1_impl_ios_IOSHealth_Fail.m -com_codename1_impl_ios_IOSHealth_Forget.m -com_codename1_impl_ios_IOSHomeBridge.m -com_codename1_impl_ios_IOSHomeCallbacks.m -com_codename1_impl_ios_IOSImplementation.m -com_codename1_impl_ios_IOSImplementation_1.m -com_codename1_impl_ios_IOSImplementation_10.m -com_codename1_impl_ios_IOSImplementation_11.m -com_codename1_impl_ios_IOSImplementation_12.m -com_codename1_impl_ios_IOSImplementation_13.m -com_codename1_impl_ios_IOSImplementation_14.m -com_codename1_impl_ios_IOSImplementation_15.m -com_codename1_impl_ios_IOSImplementation_16.m -com_codename1_impl_ios_IOSImplementation_17.m -com_codename1_impl_ios_IOSImplementation_18.m -com_codename1_impl_ios_IOSImplementation_19.m -com_codename1_impl_ios_IOSImplementation_2.m -com_codename1_impl_ios_IOSImplementation_20.m -com_codename1_impl_ios_IOSImplementation_21.m -com_codename1_impl_ios_IOSImplementation_22.m -com_codename1_impl_ios_IOSImplementation_23.m -com_codename1_impl_ios_IOSImplementation_24.m -com_codename1_impl_ios_IOSImplementation_25.m -com_codename1_impl_ios_IOSImplementation_26.m -com_codename1_impl_ios_IOSImplementation_27.m -com_codename1_impl_ios_IOSImplementation_28.m -com_codename1_impl_ios_IOSImplementation_29.m -com_codename1_impl_ios_IOSImplementation_3.m -com_codename1_impl_ios_IOSImplementation_30.m -com_codename1_impl_ios_IOSImplementation_31.m -com_codename1_impl_ios_IOSImplementation_32.m -com_codename1_impl_ios_IOSImplementation_33.m -com_codename1_impl_ios_IOSImplementation_34.m -com_codename1_impl_ios_IOSImplementation_35.m -com_codename1_impl_ios_IOSImplementation_36.m -com_codename1_impl_ios_IOSImplementation_37.m -com_codename1_impl_ios_IOSImplementation_38.m -com_codename1_impl_ios_IOSImplementation_39.m -com_codename1_impl_ios_IOSImplementation_4.m -com_codename1_impl_ios_IOSImplementation_41.m -com_codename1_impl_ios_IOSImplementation_42.m -com_codename1_impl_ios_IOSImplementation_43.m -com_codename1_impl_ios_IOSImplementation_44.m -com_codename1_impl_ios_IOSImplementation_45.m -com_codename1_impl_ios_IOSImplementation_46.m -com_codename1_impl_ios_IOSImplementation_47.m -com_codename1_impl_ios_IOSImplementation_48.m -com_codename1_impl_ios_IOSImplementation_5.m -com_codename1_impl_ios_IOSImplementation_51.m -com_codename1_impl_ios_IOSImplementation_52.m -com_codename1_impl_ios_IOSImplementation_53.m -com_codename1_impl_ios_IOSImplementation_54.m -com_codename1_impl_ios_IOSImplementation_54_1.m -com_codename1_impl_ios_IOSImplementation_55.m -com_codename1_impl_ios_IOSImplementation_56.m -com_codename1_impl_ios_IOSImplementation_57.m -com_codename1_impl_ios_IOSImplementation_58.m -com_codename1_impl_ios_IOSImplementation_59.m -com_codename1_impl_ios_IOSImplementation_6.m -com_codename1_impl_ios_IOSImplementation_60.m -com_codename1_impl_ios_IOSImplementation_61.m -com_codename1_impl_ios_IOSImplementation_63.m -com_codename1_impl_ios_IOSImplementation_64.m -com_codename1_impl_ios_IOSImplementation_65.m -com_codename1_impl_ios_IOSImplementation_66.m -com_codename1_impl_ios_IOSImplementation_67.m -com_codename1_impl_ios_IOSImplementation_7.m -com_codename1_impl_ios_IOSImplementation_70.m -com_codename1_impl_ios_IOSImplementation_71.m -com_codename1_impl_ios_IOSImplementation_72.m -com_codename1_impl_ios_IOSImplementation_73.m -com_codename1_impl_ios_IOSImplementation_74.m -com_codename1_impl_ios_IOSImplementation_75.m -com_codename1_impl_ios_IOSImplementation_75_1.m -com_codename1_impl_ios_IOSImplementation_76.m -com_codename1_impl_ios_IOSImplementation_77.m -com_codename1_impl_ios_IOSImplementation_78.m -com_codename1_impl_ios_IOSImplementation_79.m -com_codename1_impl_ios_IOSImplementation_7_1.m -com_codename1_impl_ios_IOSImplementation_8.m -com_codename1_impl_ios_IOSImplementation_80.m -com_codename1_impl_ios_IOSImplementation_81.m -com_codename1_impl_ios_IOSImplementation_82.m -com_codename1_impl_ios_IOSImplementation_83.m -com_codename1_impl_ios_IOSImplementation_84.m -com_codename1_impl_ios_IOSImplementation_85.m -com_codename1_impl_ios_IOSImplementation_86.m -com_codename1_impl_ios_IOSImplementation_87.m -com_codename1_impl_ios_IOSImplementation_88.m -com_codename1_impl_ios_IOSImplementation_89.m -com_codename1_impl_ios_IOSImplementation_8_1.m -com_codename1_impl_ios_IOSImplementation_9.m -com_codename1_impl_ios_IOSImplementation_90.m -com_codename1_impl_ios_IOSImplementation_92.m -com_codename1_impl_ios_IOSImplementation_93.m -com_codename1_impl_ios_IOSImplementation_94.m -com_codename1_impl_ios_IOSImplementation_95.m -com_codename1_impl_ios_IOSImplementation_96.m -com_codename1_impl_ios_IOSImplementation_97.m -com_codename1_impl_ios_IOSImplementation_ClipShape.m -com_codename1_impl_ios_IOSImplementation_CodeScannerImpl.m -com_codename1_impl_ios_IOSImplementation_ExportedDrag.m -com_codename1_impl_ios_IOSImplementation_FileBackedOutputStream.m -com_codename1_impl_ios_IOSImplementation_FontStringCache.m -com_codename1_impl_ios_IOSImplementation_GlobalGraphics.m -com_codename1_impl_ios_IOSImplementation_Gradient.m -com_codename1_impl_ios_IOSImplementation_IOSMedia.m -com_codename1_impl_ios_IOSImplementation_IOSMediaCallback.m -com_codename1_impl_ios_IOSImplementation_IOSMedia_1.m -com_codename1_impl_ios_IOSImplementation_IOSMedia_2.m -com_codename1_impl_ios_IOSImplementation_IOSMedia_3.m -com_codename1_impl_ios_IOSImplementation_IOSMedia_4.m -com_codename1_impl_ios_IOSImplementation_IOSVideoReader.m -com_codename1_impl_ios_IOSImplementation_IOSVideoWriter.m -com_codename1_impl_ios_IOSImplementation_Loc.m -com_codename1_impl_ios_IOSImplementation_MacCaptureRequest.m -com_codename1_impl_ios_IOSImplementation_NativeFont.m -com_codename1_impl_ios_IOSImplementation_NativeGraphics.m -com_codename1_impl_ios_IOSImplementation_NativeIPhoneView.m -com_codename1_impl_ios_IOSImplementation_NativeImage.m -com_codename1_impl_ios_IOSImplementation_NativePathConsumer.m -com_codename1_impl_ios_IOSImplementation_NativePathRenderer.m -com_codename1_impl_ios_IOSImplementation_NativePathStroker.m -com_codename1_impl_ios_IOSImplementation_NetworkConnection.m -com_codename1_impl_ios_IOSImplementation_Paint.m -com_codename1_impl_ios_IOSImplementation_PendingPush.m -com_codename1_impl_ios_IOSImplementation_RadialGradient.m -com_codename1_impl_ios_IOSImplementation_TextureAlphaMask.m -com_codename1_impl_ios_IOSImplementation_TextureAlphaMaskProxy.m -com_codename1_impl_ios_IOSImplementation_TextureCache.m -com_codename1_impl_ios_IOSImplementation_TiGeometryOp.m -com_codename1_impl_ios_IOSInferenceImpl.m -com_codename1_impl_ios_IOSInferenceImpl_1.m -com_codename1_impl_ios_IOSInferenceImpl_1_1.m -com_codename1_impl_ios_IOSInferenceImpl_3.m -com_codename1_impl_ios_IOSInferenceImpl_Handle.m -com_codename1_impl_ios_IOSIntentBridge.m -com_codename1_impl_ios_IOSIntentCallbacks.m -com_codename1_impl_ios_IOSIntentCallbacks_1.m -com_codename1_impl_ios_IOSIntentCallbacks_InvocationWaiter.m -com_codename1_impl_ios_IOSIntentCallbacks_WindowWaiter.m -com_codename1_impl_ios_IOSL2capChannel.m -com_codename1_impl_ios_IOSL2capChannel_1.m -com_codename1_impl_ios_IOSL2capChannel_2.m -com_codename1_impl_ios_IOSL2capServer.m -com_codename1_impl_ios_IOSLanguageImpl.m -com_codename1_impl_ios_IOSLanguageImpl_1.m -com_codename1_impl_ios_IOSLanguageImpl_2.m -com_codename1_impl_ios_IOSLanguageImpl_3.m -com_codename1_impl_ios_IOSLanguageImpl_4.m -com_codename1_impl_ios_IOSLanguageImpl_4_1.m -com_codename1_impl_ios_IOSLanguageImpl_4_2.m -com_codename1_impl_ios_IOSLanguageImpl_NativeCall.m -com_codename1_impl_ios_IOSMetalShaderGenerator.m -com_codename1_impl_ios_IOSMotionSensorManager.m -com_codename1_impl_ios_IOSNative.m -com_codename1_impl_ios_IOSNearbyBridge.m -com_codename1_impl_ios_IOSNearbyCallbacks.m -com_codename1_impl_ios_IOSNetworkTypePlatform.m -com_codename1_impl_ios_IOSNfc.m -com_codename1_impl_ios_IOSNfc_1.m -com_codename1_impl_ios_IOSNfc_2.m -com_codename1_impl_ios_IOSNfc_3.m -com_codename1_impl_ios_IOSNfc_4.m -com_codename1_impl_ios_IOSNfc_5.m -com_codename1_impl_ios_IOSNfc_6.m -com_codename1_impl_ios_IOSNfc_7.m -com_codename1_impl_ios_IOSNfc_IOSIsoDep.m -com_codename1_impl_ios_IOSNfc_IOSTag.m -com_codename1_impl_ios_IOSSecureStorage.m -com_codename1_impl_ios_IOSSecureStorage_1.m -com_codename1_impl_ios_IOSSecureStorage_2.m -com_codename1_impl_ios_IOSSecureStorage_3.m -com_codename1_impl_ios_IOSSimd.m -com_codename1_impl_ios_IOSSurfaceBridge.m -com_codename1_impl_ios_IOSSurfaceCallbacks.m -com_codename1_impl_ios_IOSVideoCaptureConstraintsCompiler.m -com_codename1_impl_ios_IOSVirtualKeyboard.m -com_codename1_impl_ios_IOSVisionImpl.m -com_codename1_impl_ios_IOSVisionImpl_1.m -com_codename1_impl_ios_IOSVisionImpl_1_1.m -com_codename1_impl_ios_IOSVisionImpl_1_2.m -com_codename1_impl_ios_IOSVisionImpl_2.m -com_codename1_impl_ios_IOSVpnBridge.m -com_codename1_impl_ios_IOSWearableBridge.m -com_codename1_impl_ios_IOSWearableBridge_DroppedDelivery.m -com_codename1_impl_ios_IOSWearableCallbacks.m -com_codename1_impl_ios_IOSWearableCallbacks_1.m -com_codename1_impl_ios_IOSWearableCallbacks_2.m -com_codename1_impl_ios_IOSWearableCallbacks_2_1.m -com_codename1_impl_ios_IOSWebSocketImpl.m -com_codename1_impl_ios_Lifecycle.m -com_codename1_impl_ios_MacWindowManager.m -com_codename1_impl_ios_MacWindowManager_Peer.m -com_codename1_impl_ios_Matrix.m -com_codename1_impl_ios_Matrix_1.m -com_codename1_impl_ios_Matrix_Factory.m -com_codename1_impl_ios_Matrix_MatrixUtil.m -com_codename1_impl_ios_NSDataInputStream.m -com_codename1_impl_ios_NSDataOutputStream.m -com_codename1_impl_ios_NSFileInputStream.m -com_codename1_impl_ios_TextEditUtil.m -com_codename1_impl_ios_TextEditUtil_1.m -com_codename1_impl_ios_ZoozPurchase.m -com_codename1_impl_ios_ZoozPurchase_2.m -com_codename1_impl_nearby_NearbyRequests.m -com_codename1_impl_nearby_NearbyWire.m -com_codename1_impl_time_TimeZoneSupport.m -com_codename1_impl_vpn_VpnRequests.m -com_codename1_impl_vpn_VpnWire.m -com_codename1_intents_AppEntity.m -com_codename1_intents_DynamicIntent.m -com_codename1_intents_EntitySelectionHandler.m -com_codename1_intents_Exposure.m -com_codename1_intents_IntentCompletion.m -com_codename1_intents_IntentContext.m -com_codename1_intents_IntentDates.m -com_codename1_intents_IntentDeclaration.m -com_codename1_intents_IntentDispatcher.m -com_codename1_intents_IntentParameterInfo.m -com_codename1_intents_IntentParameterType.m -com_codename1_intents_IntentResult.m -com_codename1_intents_IntentSerializer.m -com_codename1_intents_IntentSource.m -com_codename1_intents_IntentText.m -com_codename1_intents_Intents.m -com_codename1_intents_Intents_1.m -com_codename1_intents_Intents_2.m -com_codename1_intents_Intents_3.m -com_codename1_intents_Intents_4.m -com_codename1_intents_Intents_5.m -com_codename1_intents_Intents_CompletionGuard.m -com_codename1_intents_Intents_Outcome.m -com_codename1_intents_Intents_PendingActivity.m -com_codename1_intents_Intents_PendingInvocation.m -com_codename1_intents_Intents_SelectionWaiter.m -com_codename1_intents_Intents_ToolCompletion.m -com_codename1_intents_generated_IntentRegistry.m -com_codename1_intents_spi_IntentBridge.m -com_codename1_io_BufferedInputStream.m -com_codename1_io_BufferedOutputStream.m -com_codename1_io_CacheMap.m -com_codename1_io_CharArrayReader.m -com_codename1_io_ConnectionRequest.m -com_codename1_io_ConnectionRequest_2.m -com_codename1_io_ConnectionRequest_3.m -com_codename1_io_ConnectionRequest_4.m -com_codename1_io_ConnectionRequest_CachingMode.m -com_codename1_io_ConnectionRequest_SSLCertificate.m -com_codename1_io_Cookie.m -com_codename1_io_Data.m -com_codename1_io_Externalizable.m -com_codename1_io_File.m -com_codename1_io_FileSystemStorage.m -com_codename1_io_FileSystemStorage_1.m -com_codename1_io_IOProgressListener.m -com_codename1_io_JSONParseCallback.m -com_codename1_io_JSONParser.m -com_codename1_io_JSONParser_1.m -com_codename1_io_JSONParser_KeyStack.m -com_codename1_io_JSONParser_RawJson.m -com_codename1_io_JSONParser_ReaderClass.m -com_codename1_io_JSONSanitizer.m -com_codename1_io_JSONSanitizer_1.m -com_codename1_io_JSONSanitizer_State.m -com_codename1_io_JSONSanitizer_UnbracketedComma.m -com_codename1_io_JSONWriter.m -com_codename1_io_JSONWriter_ArrayBuilder.m -com_codename1_io_JSONWriter_ObjectBuilder.m -com_codename1_io_Log.m -com_codename1_io_Log_1.m -com_codename1_io_MultipartRequest.m -com_codename1_io_NetworkEvent.m -com_codename1_io_NetworkGuard.m -com_codename1_io_NetworkManager.m -com_codename1_io_NetworkManager_1.m -com_codename1_io_NetworkManager_2WaitingClass.m -com_codename1_io_NetworkManager_AutoDetectAPN.m -com_codename1_io_NetworkManager_NetworkThread.m -com_codename1_io_NetworkManager_NetworkThread_1.m -com_codename1_io_NetworkTypeListener.m -com_codename1_io_NetworkTypePlatform.m -com_codename1_io_PreferenceListener.m -com_codename1_io_Preferences.m -com_codename1_io_Storage.m -com_codename1_io_URL.m -com_codename1_io_Util.m -com_codename1_io_Util_UUID.m -com_codename1_io_WebSocket.m -com_codename1_io_WebSocketState.m -com_codename1_io_WebSocket_1.m -com_codename1_io_WebSocket_BinaryHandler.m -com_codename1_io_WebSocket_CloseHandler.m -com_codename1_io_WebSocket_ConnectHandler.m -com_codename1_io_WebSocket_ErrorHandler.m -com_codename1_io_WebSocket_TextHandler.m -com_codename1_io_bonjour_BonjourPlatform.m -com_codename1_io_bonjour_BonjourService.m -com_codename1_io_bonjour_BonjourServiceListener.m -com_codename1_io_grpc_ProtoReader.m -com_codename1_io_gzip_Adler32.m -com_codename1_io_gzip_CRC32.m -com_codename1_io_gzip_Checksum.m -com_codename1_io_gzip_Deflate.m -com_codename1_io_gzip_Deflate_Config.m -com_codename1_io_gzip_FilterInputStream.m -com_codename1_io_gzip_GZIPException.m -com_codename1_io_gzip_GZIPHeader.m -com_codename1_io_gzip_GZIPInputStream.m -com_codename1_io_gzip_InfBlocks.m -com_codename1_io_gzip_InfCodes.m -com_codename1_io_gzip_InfTree.m -com_codename1_io_gzip_Inflate.m -com_codename1_io_gzip_Inflate_Return.m -com_codename1_io_gzip_Inflater.m -com_codename1_io_gzip_InflaterInputStream.m -com_codename1_io_gzip_JZlib.m -com_codename1_io_gzip_JZlib_ANY.m -com_codename1_io_gzip_JZlib_GZIP.m -com_codename1_io_gzip_JZlib_NONE.m -com_codename1_io_gzip_JZlib_WrapperType.m -com_codename1_io_gzip_JZlib_ZLIB.m -com_codename1_io_gzip_StaticTree.m -com_codename1_io_gzip_Tree.m -com_codename1_io_gzip_ZStream.m -com_codename1_io_tar_Octal.m -com_codename1_io_tar_TarEntry.m -com_codename1_io_tar_TarHeader.m -com_codename1_io_tar_TarInputStream.m -com_codename1_io_usb_UsbPlatform.m -com_codename1_io_wifi_WiFiConnectCallback.m -com_codename1_io_wifi_WifiDirectPlatform.m -com_codename1_io_wifi_WifiPlatform.m -com_codename1_l10n_DateFormat.m -com_codename1_l10n_DateFormatSymbols.m -com_codename1_l10n_Format.m -com_codename1_l10n_L10NManager.m -com_codename1_l10n_ParseException.m -com_codename1_l10n_SimpleDateFormat.m -com_codename1_l10n_SimpleDateFormat_1.m -com_codename1_l10n_SimpleDateFormat_TimeZoneResult.m -com_codename1_location_Geofence.m -com_codename1_location_GeofenceListener.m -com_codename1_location_Location.m -com_codename1_location_LocationListener.m -com_codename1_location_LocationManager.m -com_codename1_location_LocationRequest.m -com_codename1_maps_CameraChangeListener.m -com_codename1_maps_CameraPosition.m -com_codename1_maps_Circle.m -com_codename1_maps_LatLng.m -com_codename1_maps_MapBounds.m -com_codename1_maps_MapObject.m -com_codename1_maps_MapProviderImpl.m -com_codename1_maps_MapSurface.m -com_codename1_maps_MapTapListener.m -com_codename1_maps_MapView.m -com_codename1_maps_MapView_1.m -com_codename1_maps_Marker.m -com_codename1_maps_MarkerOptions.m -com_codename1_maps_NativeMap.m -com_codename1_maps_NativeMap_1.m -com_codename1_maps_Polygon.m -com_codename1_maps_Polyline.m -com_codename1_maps_WebMapProvider.m -com_codename1_maps_WebMapProvider_1.m -com_codename1_maps_WebMapProvider_1_1.m -com_codename1_maps_spi_MapProvider.m -com_codename1_maps_spi_MapProviderRegistry.m -com_codename1_maps_vector_BundledTileSource.m -com_codename1_maps_vector_BundledTileSource_1.m -com_codename1_maps_vector_BundledTileSource_1_1.m -com_codename1_maps_vector_HttpTileSource.m -com_codename1_maps_vector_HttpTileSource_1.m -com_codename1_maps_vector_HttpTileSource_1_1.m -com_codename1_maps_vector_HttpTileSource_1_1_1.m -com_codename1_maps_vector_HttpTileSource_1_2.m -com_codename1_maps_vector_HttpTileSource_1_3.m -com_codename1_maps_vector_HttpTileSource_TileRequest.m -com_codename1_maps_vector_HttpTileSource_TileRequest_1.m -com_codename1_maps_vector_HttpTileSource_TileRequest_1_1.m -com_codename1_maps_vector_HttpTileSource_TileRequest_1_2.m -com_codename1_maps_vector_HttpTileSource_TileRequest_2.m -com_codename1_maps_vector_HttpTileSource_TileRequest_3.m -com_codename1_maps_vector_IntArray.m -com_codename1_maps_vector_LabelCandidate.m -com_codename1_maps_vector_LabelEngine.m -com_codename1_maps_vector_MapStyle.m -com_codename1_maps_vector_MapTileWorker.m -com_codename1_maps_vector_MvtDecoder.m -com_codename1_maps_vector_MvtTileSource.m -com_codename1_maps_vector_StyleLayer.m -com_codename1_maps_vector_TileCache.m -com_codename1_maps_vector_TileCallback.m -com_codename1_maps_vector_TileRenderer.m -com_codename1_maps_vector_TileSource.m -com_codename1_maps_vector_TileUtil.m -com_codename1_maps_vector_VectorFeature.m -com_codename1_maps_vector_VectorLayer.m -com_codename1_maps_vector_VectorMapEngine.m -com_codename1_maps_vector_VectorMapEngine_1.m -com_codename1_maps_vector_VectorMapEngine_2.m -com_codename1_maps_vector_VectorMapEngine_2_1.m -com_codename1_maps_vector_VectorMapEngine_TileResult.m -com_codename1_maps_vector_VectorTile.m -com_codename1_maps_vector_WebMercator.m -com_codename1_maps_vector_ZoomValue.m -com_codename1_media_AbstractMedia.m -com_codename1_media_AbstractMedia_1.m -com_codename1_media_AbstractMedia_1StateChangeListener.m -com_codename1_media_AbstractMedia_2.m -com_codename1_media_AbstractMedia_2StateChangeListener.m -com_codename1_media_AbstractMedia_3.m -com_codename1_media_AbstractMedia_4.m -com_codename1_media_AbstractMedia_5.m -com_codename1_media_AbstractMedia_6.m -com_codename1_media_AbstractMedia_7.m -com_codename1_media_AbstractMedia_8.m -com_codename1_media_AbstractMedia_PauseAsyncExceptSuccessCallback.m -com_codename1_media_AbstractMedia_PauseAsyncSuccessCallback.m -com_codename1_media_AbstractMedia_PlayAsyncExceptSuccessCallback.m -com_codename1_media_AbstractMedia_PlayAsyncSuccessCallback.m -com_codename1_media_AsyncMedia.m -com_codename1_media_AsyncMedia_MediaErrorEvent.m -com_codename1_media_AsyncMedia_MediaErrorType.m -com_codename1_media_AsyncMedia_MediaException.m -com_codename1_media_AsyncMedia_MediaStateChangeEvent.m -com_codename1_media_AsyncMedia_PauseRequest.m -com_codename1_media_AsyncMedia_PlayRequest.m -com_codename1_media_AsyncMedia_State.m -com_codename1_media_AudioBuffer.m -com_codename1_media_AudioBuffer_AudioBufferCallback.m -com_codename1_media_AudioEffects.m -com_codename1_media_AudioMixer.m -com_codename1_media_AudioMixer_Track.m -com_codename1_media_Media.m -com_codename1_media_MediaManager.m -com_codename1_media_MediaRecorderBuilder.m -com_codename1_media_RemoteControlListener.m -com_codename1_media_VideoCodec.m -com_codename1_media_VideoFrame.m -com_codename1_media_VideoIO.m -com_codename1_media_VideoIO_SpooledVideoReader.m -com_codename1_media_VideoReader.m -com_codename1_media_VideoReader_FrameCallback.m -com_codename1_media_VideoWriter.m -com_codename1_media_VideoWriterBuilder.m -com_codename1_media_WAVWriter.m -com_codename1_messaging_Message.m -com_codename1_nearby_NearbyError.m -com_codename1_nearby_NearbyException.m -com_codename1_nearby_companion_CompanionDevice.m -com_codename1_nearby_companion_CompanionDevices.m -com_codename1_nearby_companion_CompanionDevices_1.m -com_codename1_nearby_companion_CompanionDevices_2.m -com_codename1_nearby_companion_CompanionDevices_PendingPresence.m -com_codename1_nearby_companion_CompanionProfile.m -com_codename1_nearby_companion_PresenceListener.m -com_codename1_nearby_ranging_Ranging.m -com_codename1_nearby_ranging_RangingListener.m -com_codename1_nearby_ranging_RangingRemovalReason.m -com_codename1_nearby_ranging_RangingRole.m -com_codename1_nearby_ranging_RangingSession.m -com_codename1_nearby_ranging_RangingSession_1.m -com_codename1_nearby_ranging_RangingSession_2.m -com_codename1_nearby_ranging_RangingSession_3.m -com_codename1_nearby_ranging_RangingSession_4.m -com_codename1_nearby_ranging_RangingSession_5.m -com_codename1_nearby_ranging_RangingToken.m -com_codename1_nearby_ranging_RangingUpdate.m -com_codename1_nearby_spi_NearbyBridge.m -com_codename1_nearby_transport_Endpoint.m -com_codename1_nearby_transport_IncomingConnection.m -com_codename1_nearby_transport_NearbyTransport.m -com_codename1_nearby_transport_NearbyTransport_1.m -com_codename1_nearby_transport_NearbyTransport_2.m -com_codename1_nearby_transport_NearbyTransport_3.m -com_codename1_nearby_transport_NearbyTransport_4.m -com_codename1_nearby_transport_NearbyTransport_5.m -com_codename1_nearby_transport_NearbyTransport_6.m -com_codename1_nearby_transport_NearbyTransport_7.m -com_codename1_nearby_transport_Payload.m -com_codename1_nearby_transport_PayloadStatus.m -com_codename1_nearby_transport_PayloadTransferUpdate.m -com_codename1_nearby_transport_TransportListener.m -com_codename1_nfc_ApduResponse.m -com_codename1_nfc_HostCardEmulationService.m -com_codename1_nfc_IsoDep.m -com_codename1_nfc_NdefMessage.m -com_codename1_nfc_NdefRecord.m -com_codename1_nfc_Nfc.m -com_codename1_nfc_NfcError.m -com_codename1_nfc_NfcException.m -com_codename1_nfc_Tag.m -com_codename1_nfc_TagTechnology.m -com_codename1_nfc_TagType.m -com_codename1_notifications_LocalNotification.m -com_codename1_notifications_LocalNotificationCallback.m -com_codename1_notifications_LocalNotification_Action.m -com_codename1_notifications_LocalNotification_MessagingStyle.m -com_codename1_notifications_NotificationChannelBuilder.m -com_codename1_notifications_NotificationPermissionCallback.m -com_codename1_notifications_NotificationPermissionResult.m -com_codename1_notifications_NotificationPermissionResult_AuthorizationLevel.m -com_codename1_payment_ApplePromotionalOffer.m -com_codename1_payment_Product.m -com_codename1_payment_PromotionalOffer.m -com_codename1_payment_Purchase.m -com_codename1_payment_PurchaseCallback.m -com_codename1_payment_Purchase_1.m -com_codename1_payment_Purchase_10.m -com_codename1_payment_Purchase_11.m -com_codename1_payment_Purchase_11_1.m -com_codename1_payment_Purchase_2.m -com_codename1_payment_Purchase_3.m -com_codename1_payment_Purchase_4.m -com_codename1_payment_Purchase_5.m -com_codename1_payment_Purchase_6.m -com_codename1_payment_Purchase_7.m -com_codename1_payment_Purchase_8.m -com_codename1_payment_Purchase_9.m -com_codename1_payment_Receipt.m -com_codename1_payment_ReceiptStore.m -com_codename1_payment_RestoreCallback.m -com_codename1_plugin_Plugin.m -com_codename1_plugin_PluginSupport.m -com_codename1_plugin_event_IsGalleryTypeSupportedEvent.m -com_codename1_plugin_event_OpenGalleryEvent.m -com_codename1_plugin_event_PluginEvent.m -com_codename1_printing_PrintResult.m -com_codename1_printing_PrintResultListener.m -com_codename1_processing_AbstractEvaluator.m -com_codename1_processing_AttributeEvaluator.m -com_codename1_processing_ContainsEvaluator.m -com_codename1_processing_Evaluator.m -com_codename1_processing_EvaluatorFactory.m -com_codename1_processing_IndexEvaluator.m -com_codename1_processing_JSONContent.m -com_codename1_processing_MapContent.m -com_codename1_processing_PrettyPrinter.m -com_codename1_processing_Result.m -com_codename1_processing_ResultTokenizer.m -com_codename1_processing_StructuredContent.m -com_codename1_processing_SubContent.m -com_codename1_processing_TextEvaluator.m -com_codename1_processing_XMLContent.m -com_codename1_properties_BooleanProperty.m -com_codename1_properties_CollectionProperty.m -com_codename1_properties_DoubleProperty.m -com_codename1_properties_FloatProperty.m -com_codename1_properties_IntProperty.m -com_codename1_properties_LongProperty.m -com_codename1_properties_MapAdapter.m -com_codename1_properties_MapProperty.m -com_codename1_properties_NumericProperty.m -com_codename1_properties_Property.m -com_codename1_properties_PropertyBase.m -com_codename1_properties_PropertyBusinessObject.m -com_codename1_properties_PropertyChangeListener.m -com_codename1_properties_PropertyIndex.m -com_codename1_properties_PropertyIndex_1.m -com_codename1_properties_PropertyIndex_2.m -com_codename1_push_PushAction.m -com_codename1_push_PushActionCategory.m -com_codename1_push_PushActionsProvider.m -com_codename1_push_PushCallback.m -com_codename1_push_PushClient.m -com_codename1_push_PushClient_1.m -com_codename1_push_PushClient_2.m -com_codename1_push_PushClient_3.m -com_codename1_push_PushClient_4.m -com_codename1_push_PushClient_5.m -com_codename1_push_PushClient_Builder.m -com_codename1_push_PushClient_CompatibilityCallback.m -com_codename1_push_PushClient_ManagedUnregisterRequest.m -com_codename1_push_PushClient_TransportCallback.m -com_codename1_push_PushContent.m -com_codename1_push_PushError.m -com_codename1_push_PushListener.m -com_codename1_push_PushMessage.m -com_codename1_push_PushMessage_1.m -com_codename1_push_PushRegistrationSink.m -com_codename1_push_PushSubscription.m -com_codename1_push_PushTransport.m -com_codename1_push_PushTransport_Callback.m -com_codename1_router_Navigation.m -com_codename1_router_NavigationEntry.m -com_codename1_router_Navigation_1.m -com_codename1_router_PopGuard.m -com_codename1_router_PopReason.m -com_codename1_router_RouteDispatcher.m -com_codename1_security_Base32.m -com_codename1_security_BiometricError.m -com_codename1_security_BiometricException.m -com_codename1_security_Biometrics.m -com_codename1_security_Cipher.m -com_codename1_security_CryptoException.m -com_codename1_security_Hash.m -com_codename1_security_Hmac.m -com_codename1_security_Jwt.m -com_codename1_security_Key.m -com_codename1_security_KeyGenerator.m -com_codename1_security_KeyPair.m -com_codename1_security_MessageDigestImpl.m -com_codename1_security_MessageDigestImpl_Block64.m -com_codename1_security_MessageDigestImpl_Md5.m -com_codename1_security_MessageDigestImpl_Sha1.m -com_codename1_security_MessageDigestImpl_Sha256Family.m -com_codename1_security_MessageDigestImpl_Sha512Family.m -com_codename1_security_Otp.m -com_codename1_security_PrivateKey.m -com_codename1_security_PublicKey.m -com_codename1_security_SecretKey.m -com_codename1_security_SecureRandom.m -com_codename1_security_SecureStorage.m -com_codename1_security_Signature.m -com_codename1_security_TapjackingPolicy.m -com_codename1_sensors_GestureEngine.m -com_codename1_sensors_GestureEvent.m -com_codename1_sensors_GestureListener.m -com_codename1_sensors_MotionEvent.m -com_codename1_sensors_MotionSensor.m -com_codename1_sensors_MotionSensorListener.m -com_codename1_sensors_MotionSensorManager.m -com_codename1_sensors_MotionSensorManager_1.m -com_codename1_sensors_MotionSensorManager_DispatchGesture.m -com_codename1_sensors_MotionSensor_DispatchEvent.m -com_codename1_sensors_UnsupportedMotionSensorManager.m -com_codename1_share_ShareResult.m -com_codename1_share_ShareResultListener.m -com_codename1_share_SharedContent.m -com_codename1_share_SharedContent_1.m -com_codename1_share_SharedContent_Builder.m -com_codename1_share_SharedContent_Item.m -com_codename1_social_LoginCallback.m -com_codename1_surfaces_LiveActivity.m -com_codename1_surfaces_LiveActivityDescriptor.m -com_codename1_surfaces_SurfaceActionEvent.m -com_codename1_surfaces_SurfaceActionHandler.m -com_codename1_surfaces_SurfaceAlignment.m -com_codename1_surfaces_SurfaceBox.m -com_codename1_surfaces_SurfaceColor.m -com_codename1_surfaces_SurfaceColumn.m -com_codename1_surfaces_SurfaceContainer.m -com_codename1_surfaces_SurfaceDiagnostics.m -com_codename1_surfaces_SurfaceDynamicText.m -com_codename1_surfaces_SurfaceFontWeight.m -com_codename1_surfaces_SurfaceImage.m -com_codename1_surfaces_SurfaceNode.m -com_codename1_surfaces_SurfaceProgress.m -com_codename1_surfaces_SurfaceRasterizer.m -com_codename1_surfaces_SurfaceRasterizer_1.m -com_codename1_surfaces_SurfaceRasterizer_ActionRect.m -com_codename1_surfaces_SurfaceRasterizer_LNode.m -com_codename1_surfaces_SurfaceRasterizer_Result.m -com_codename1_surfaces_SurfaceRow.m -com_codename1_surfaces_SurfaceSerializer.m -com_codename1_surfaces_SurfaceSpacer.m -com_codename1_surfaces_SurfaceText.m -com_codename1_surfaces_SurfaceVector.m -com_codename1_surfaces_Surfaces.m -com_codename1_surfaces_Surfaces_1.m -com_codename1_surfaces_WidgetKind.m -com_codename1_surfaces_WidgetSize.m -com_codename1_surfaces_WidgetTimeline.m -com_codename1_surfaces_WidgetTimeline_Entry.m -com_codename1_surfaces_spi_SurfaceBridge.m -com_codename1_system_CrashReport.m -com_codename1_system_Lifecycle.m -com_codename1_system_Lifecycle_1.m -com_codename1_system_NativeInterface.m -com_codename1_system_NativeLookup.m -com_codename1_system_URLCallback.m -com_codename1_testing_AbstractTest.m -com_codename1_testing_DatabaseConformanceSuite.m -com_codename1_testing_DatabaseConformanceSuite_Reporter.m -com_codename1_testing_DeviceRunner.m -com_codename1_testing_TestReporting.m -com_codename1_testing_TestReporting_TestReportingHolder.m -com_codename1_testing_TestUtils.m -com_codename1_testing_TestUtils_2.m -com_codename1_testing_UnitTest.m -com_codename1_ui_AbstractDialog.m -com_codename1_ui_AbstractEditorComponent.m -com_codename1_ui_AbstractEditorComponent_1.m -com_codename1_ui_AbstractEditorComponent_2.m -com_codename1_ui_AbstractEditorComponent_3.m -com_codename1_ui_AbstractEditorComponent_4.m -com_codename1_ui_AccessibilityColorVisionDeficiency.m -com_codename1_ui_Accessor.m -com_codename1_ui_AnimationManager.m -com_codename1_ui_AnimationManager_1.m -com_codename1_ui_BlockingDisallowedException.m -com_codename1_ui_BrowserComponent.m -com_codename1_ui_BrowserComponent_1.m -com_codename1_ui_BrowserComponent_13.m -com_codename1_ui_BrowserComponent_14.m -com_codename1_ui_BrowserComponent_15.m -com_codename1_ui_BrowserComponent_16.m -com_codename1_ui_BrowserComponent_17.m -com_codename1_ui_BrowserComponent_18.m -com_codename1_ui_BrowserComponent_19.m -com_codename1_ui_BrowserComponent_2.m -com_codename1_ui_BrowserComponent_20.m -com_codename1_ui_BrowserComponent_21.m -com_codename1_ui_BrowserComponent_22.m -com_codename1_ui_BrowserComponent_23.m -com_codename1_ui_BrowserComponent_24.m -com_codename1_ui_BrowserComponent_25.m -com_codename1_ui_BrowserComponent_26.m -com_codename1_ui_BrowserComponent_27.m -com_codename1_ui_BrowserComponent_28.m -com_codename1_ui_BrowserComponent_3.m -com_codename1_ui_BrowserComponent_4.m -com_codename1_ui_BrowserComponent_5.m -com_codename1_ui_BrowserComponent_6.m -com_codename1_ui_BrowserComponent_7.m -com_codename1_ui_BrowserComponent_8.m -com_codename1_ui_BrowserComponent_AlwaysTrueShouldNavigateCallback.m -com_codename1_ui_BrowserComponent_FireNavigationCallbackRunnable.m -com_codename1_ui_BrowserComponent_JSExpression.m -com_codename1_ui_BrowserComponent_JSProxy.m -com_codename1_ui_BrowserComponent_JSRef.m -com_codename1_ui_BrowserComponent_JSType.m -com_codename1_ui_BrowserComponent_NavigationCallbackRunnable.m -com_codename1_ui_Button.m -com_codename1_ui_ButtonGroup.m -com_codename1_ui_Button_1.m -com_codename1_ui_CN.m -com_codename1_ui_CN1Constants.m -com_codename1_ui_CSSColor.m -com_codename1_ui_CSSGradientParser.m -com_codename1_ui_CSSGradientParser_Stops.m -com_codename1_ui_Calendar.m -com_codename1_ui_Calendar_1.m -com_codename1_ui_Calendar_MonthView.m -com_codename1_ui_CheckBox.m -com_codename1_ui_ClipboardContent.m -com_codename1_ui_ClipboardContent_LazyValue.m -com_codename1_ui_ClipboardDataProvider.m -com_codename1_ui_CodeCompletion.m -com_codename1_ui_CodeCompletionProvider.m -com_codename1_ui_CodeDiagnostic.m -com_codename1_ui_CodeEditor.m -com_codename1_ui_CodeEditor_1.m -com_codename1_ui_CodeEditor_1_1.m -com_codename1_ui_ComboBox.m -com_codename1_ui_ComboBox_1.m -com_codename1_ui_Command.m -com_codename1_ui_Command_1.m -com_codename1_ui_Component.m -com_codename1_ui_ComponentImage.m -com_codename1_ui_ComponentImage_EncodedWrapper.m -com_codename1_ui_ComponentSelector.m -com_codename1_ui_ComponentSelector_ComponentClosure.m -com_codename1_ui_ComponentSelector_Filter.m -com_codename1_ui_Component_1.m -com_codename1_ui_Component_1_1.m -com_codename1_ui_Component_2.m -com_codename1_ui_Component_3.m -com_codename1_ui_Component_4.m -com_codename1_ui_Component_5.m -com_codename1_ui_Component_6.m -com_codename1_ui_Component_7.m -com_codename1_ui_Component_8.m -com_codename1_ui_Component_AnimationTransitionPainter.m -com_codename1_ui_Component_BGPainter.m -com_codename1_ui_ConicGradient.m -com_codename1_ui_Container.m -com_codename1_ui_Container_1.m -com_codename1_ui_Container_2.m -com_codename1_ui_Container_3.m -com_codename1_ui_Container_4.m -com_codename1_ui_Container_5.m -com_codename1_ui_Container_MorphAnimation.m -com_codename1_ui_Container_QueuedChange.m -com_codename1_ui_Container_QueuedInsertion.m -com_codename1_ui_Container_QueuedRemoval.m -com_codename1_ui_Container_TmpInsets.m -com_codename1_ui_Container_TransitionAnimation.m -com_codename1_ui_CustomFont.m -com_codename1_ui_Desktop.m -com_codename1_ui_Desktop_1.m -com_codename1_ui_Desktop_WindowCallback.m -com_codename1_ui_DevicePosture.m -com_codename1_ui_Dialog.m -com_codename1_ui_Dialog_1.m -com_codename1_ui_Dialog_BlockingSleepRunnable.m -com_codename1_ui_Dialog_DialogScrim.m -com_codename1_ui_Dialog_HostBackListener.m -com_codename1_ui_Dialog_HostSizeListener.m -com_codename1_ui_Dialog_HostWindowListener.m -com_codename1_ui_Dialog_HostedKeyListener.m -com_codename1_ui_Dialog_NativeCloseBridge.m -com_codename1_ui_Dialog_NativeCommandBridge.m -com_codename1_ui_Dialog_NativeShowingEndedBridge.m -com_codename1_ui_Dialog_NoOpPainter.m -com_codename1_ui_Dialog_TimeoutClock.m -com_codename1_ui_Dialog_TimeoutSchedule.m -com_codename1_ui_Display.m -com_codename1_ui_Display_1.m -com_codename1_ui_Display_2.m -com_codename1_ui_Display_5.m -com_codename1_ui_Display_5_1.m -com_codename1_ui_Display_7.m -com_codename1_ui_Display_ContactPickCompletion.m -com_codename1_ui_Display_DebugRunnable.m -com_codename1_ui_Display_DeferredContactPick.m -com_codename1_ui_Display_EdtException.m -com_codename1_ui_Display_EmptyContactPick.m -com_codename1_ui_Editable.m -com_codename1_ui_ElevationComparator.m -com_codename1_ui_EncodedImage.m -com_codename1_ui_EncodedImage_1.m -com_codename1_ui_EncodedImage_1_1.m -com_codename1_ui_Font.m -com_codename1_ui_FontImage.m -com_codename1_ui_Form.m -com_codename1_ui_Form_1.m -com_codename1_ui_Form_2.m -com_codename1_ui_Form_CurrentlyEditingFilter.m -com_codename1_ui_Form_TabIterator.m -com_codename1_ui_Form_TabIteratorComparator.m -com_codename1_ui_Form_TabIteratorFilter.m -com_codename1_ui_Form_TransferredListener.m -com_codename1_ui_GeneratedSVGImage.m -com_codename1_ui_Gradient.m -com_codename1_ui_Graphics.m -com_codename1_ui_HeavyButton.m -com_codename1_ui_IconHolder.m -com_codename1_ui_Image.m -com_codename1_ui_ImageFactory.m -com_codename1_ui_ImageFactory_1.m -com_codename1_ui_IndexedImage.m -com_codename1_ui_InputComponent.m -com_codename1_ui_InputComponent_1.m -com_codename1_ui_InputComponent_ErrorLabelTextArea.m -com_codename1_ui_InputComponent_LabelButton.m -com_codename1_ui_InterFormContainer.m -com_codename1_ui_Label.m -com_codename1_ui_Label_1.m -com_codename1_ui_Label_2.m -com_codename1_ui_LeadUtil.m -com_codename1_ui_LinearGradient.m -com_codename1_ui_LinearGradientPaint.m -com_codename1_ui_LinearGradientPaint_1.m -com_codename1_ui_List.m -com_codename1_ui_List_1.m -com_codename1_ui_List_Listeners.m -com_codename1_ui_MenuBar.m -com_codename1_ui_MenuBar_1.m -com_codename1_ui_MenuBar_MenuDisposerActionListener.m -com_codename1_ui_Monitor.m -com_codename1_ui_MultipleGradientPaint.m -com_codename1_ui_MultipleGradientPaint_ColorSpaceType.m -com_codename1_ui_MultipleGradientPaint_CycleMethod.m -com_codename1_ui_NativeDragAndDrop.m -com_codename1_ui_NativeDragAndDrop_1.m -com_codename1_ui_NativeDragAndDrop_2.m -com_codename1_ui_NativeDragAndDrop_3.m -com_codename1_ui_NativeDragAndDrop_4.m -com_codename1_ui_NativeDragOperation.m -com_codename1_ui_NativeDropEvent.m -com_codename1_ui_NavigationCommand.m -com_codename1_ui_Paint.m -com_codename1_ui_Painter.m -com_codename1_ui_PeerComponent.m -com_codename1_ui_PickerComponent.m -com_codename1_ui_PointerDragHistory.m -com_codename1_ui_RGBImage.m -com_codename1_ui_RadialGradient.m -com_codename1_ui_RadioButton.m -com_codename1_ui_RefreshThemeCallback.m -com_codename1_ui_RefreshThemeRunnable.m -com_codename1_ui_ReleasableComponent.m -com_codename1_ui_RichTextArea.m -com_codename1_ui_RichTextClipboardData.m -com_codename1_ui_RichTextFormat.m -com_codename1_ui_RunnableWrapper.m -com_codename1_ui_SVGScaledView.m -com_codename1_ui_SelectableIconHolder.m -com_codename1_ui_Sheet.m -com_codename1_ui_Sheet_1.m -com_codename1_ui_Sheet_10.m -com_codename1_ui_Sheet_2.m -com_codename1_ui_Sheet_3.m -com_codename1_ui_Sheet_4.m -com_codename1_ui_Sheet_5.m -com_codename1_ui_Sheet_6.m -com_codename1_ui_Sheet_7.m -com_codename1_ui_Sheet_8.m -com_codename1_ui_Sheet_9.m -com_codename1_ui_Sheet_ContentPaneInset.m -com_codename1_ui_Sheet_ShowPainter.m -com_codename1_ui_SideMenuBar.m -com_codename1_ui_SideMenuBar_10.m -com_codename1_ui_SideMenuBar_11.m -com_codename1_ui_SideMenuBar_2.m -com_codename1_ui_SideMenuBar_3.m -com_codename1_ui_SideMenuBar_4.m -com_codename1_ui_SideMenuBar_5.m -com_codename1_ui_SideMenuBar_6.m -com_codename1_ui_SideMenuBar_7.m -com_codename1_ui_SideMenuBar_8.m -com_codename1_ui_SideMenuBar_8_1.m -com_codename1_ui_SideMenuBar_8_1_1.m -com_codename1_ui_SideMenuBar_8_1_2.m -com_codename1_ui_SideMenuBar_8_2.m -com_codename1_ui_SideMenuBar_8_3.m -com_codename1_ui_SideMenuBar_8_4.m -com_codename1_ui_SideMenuBar_8_4_1.m -com_codename1_ui_SideMenuBar_9.m -com_codename1_ui_SideMenuBar_CommandWrapper.m -com_codename1_ui_SideMenuBar_CommandWrapper_1.m -com_codename1_ui_SideMenuBar_CommandWrapper_ShowWaiter.m -com_codename1_ui_SideMenuBar_CommandWrapper_ShowWaiter_1.m -com_codename1_ui_SideMenuBar_MenuTransition.m -com_codename1_ui_Slider.m -com_codename1_ui_Slider_1.m -com_codename1_ui_Slider_SliderActionEvent.m -com_codename1_ui_Stroke.m -com_codename1_ui_TabSelectionMorph.m -com_codename1_ui_TabSelectionMorph_Tokens.m -com_codename1_ui_Tabs.m -com_codename1_ui_Tabs_1.m -com_codename1_ui_Tabs_2.m -com_codename1_ui_Tabs_SwipeListener.m -com_codename1_ui_Tabs_TabFocusListener.m -com_codename1_ui_Tabs_TabsLayout.m -com_codename1_ui_TextArea.m -com_codename1_ui_TextArea_1.m -com_codename1_ui_TextArea_2.m -com_codename1_ui_TextArea_3.m -com_codename1_ui_TextArea_4.m -com_codename1_ui_TextArea_5.m -com_codename1_ui_TextArea_TextAreaInputDevice.m -com_codename1_ui_TextComponent.m -com_codename1_ui_TextComponent_1.m -com_codename1_ui_TextComponent_2.m -com_codename1_ui_TextComponent_3.m -com_codename1_ui_TextComponent_4.m -com_codename1_ui_TextComponent_5.m -com_codename1_ui_TextField.m -com_codename1_ui_TextField_CommandHandler.m -com_codename1_ui_TextHolder.m -com_codename1_ui_TextInputClient.m -com_codename1_ui_TextInputConfig.m -com_codename1_ui_TextInputState.m -com_codename1_ui_TextSelection.m -com_codename1_ui_TextSelection_1.m -com_codename1_ui_TextSelection_2.m -com_codename1_ui_TextSelection_3.m -com_codename1_ui_TextSelection_3_1.m -com_codename1_ui_TextSelection_3_2.m -com_codename1_ui_TextSelection_3_3.m -com_codename1_ui_TextSelection_3_4.m -com_codename1_ui_TextSelection_4.m -com_codename1_ui_TextSelection_Char.m -com_codename1_ui_TextSelection_DragHandle.m -com_codename1_ui_TextSelection_SelectionMask.m -com_codename1_ui_TextSelection_SelectionMenu.m -com_codename1_ui_TextSelection_Span.m -com_codename1_ui_TextSelection_Spans.m -com_codename1_ui_TextSelection_TextSelectionSupport.m -com_codename1_ui_TextSelection_TextSelectionTrigger.m -com_codename1_ui_Toolbar.m -com_codename1_ui_Toolbar_1.m -com_codename1_ui_Toolbar_10.m -com_codename1_ui_Toolbar_11.m -com_codename1_ui_Toolbar_12.m -com_codename1_ui_Toolbar_13.m -com_codename1_ui_Toolbar_14.m -com_codename1_ui_Toolbar_15.m -com_codename1_ui_Toolbar_16.m -com_codename1_ui_Toolbar_17.m -com_codename1_ui_Toolbar_18.m -com_codename1_ui_Toolbar_2.m -com_codename1_ui_Toolbar_4.m -com_codename1_ui_Toolbar_5.m -com_codename1_ui_Toolbar_6.m -com_codename1_ui_Toolbar_7.m -com_codename1_ui_Toolbar_8.m -com_codename1_ui_Toolbar_9.m -com_codename1_ui_Toolbar_BackCommandPolicy.m -com_codename1_ui_Toolbar_CloseSideMenuCountdown.m -com_codename1_ui_Toolbar_ToolbarSideMenu.m -com_codename1_ui_Toolbar_ToolbarSideMenu_1.m -com_codename1_ui_Toolbar_ToolbarSideMenu_2.m -com_codename1_ui_Toolbar_ToolbarWindowDrag.m -com_codename1_ui_TooltipManager.m -com_codename1_ui_TooltipManager_1.m -com_codename1_ui_TopLevelContainer.m -com_codename1_ui_TopLevelSupport.m -com_codename1_ui_Transform.m -com_codename1_ui_Transform_1.m -com_codename1_ui_Transform_IdentityHolder.m -com_codename1_ui_Transform_ImmutableTransform.m -com_codename1_ui_Transform_NotInvertibleException.m -com_codename1_ui_VirtualInputDevice.m -com_codename1_ui_Window.m -com_codename1_ui_Window_1.m -com_codename1_ui_Window_12.m -com_codename1_ui_Window_13.m -com_codename1_ui_Window_14.m -com_codename1_ui_Window_15.m -com_codename1_ui_Window_16.m -com_codename1_ui_Window_17.m -com_codename1_ui_Window_18.m -com_codename1_ui_Window_2.m -com_codename1_ui_Window_20.m -com_codename1_ui_Window_21.m -com_codename1_ui_Window_22.m -com_codename1_ui_Window_23.m -com_codename1_ui_Window_24.m -com_codename1_ui_Window_25.m -com_codename1_ui_Window_26.m -com_codename1_ui_Window_27.m -com_codename1_ui_Window_28.m -com_codename1_ui_Window_29.m -com_codename1_ui_Window_3.m -com_codename1_ui_Window_30.m -com_codename1_ui_Window_31.m -com_codename1_ui_Window_32.m -com_codename1_ui_Window_4.m -com_codename1_ui_Window_5.m -com_codename1_ui_Window_6.m -com_codename1_ui_Window_7.m -com_codename1_ui_Window_8.m -com_codename1_ui_Window_PointerExemption.m -com_codename1_ui_Window_ScopedKeyListener.m -com_codename1_ui_accessibility_AccessibilityAction.m -com_codename1_ui_accessibility_AccessibilityAction_Handler.m -com_codename1_ui_accessibility_AccessibilityAssertions.m -com_codename1_ui_accessibility_AccessibilityCheckedState.m -com_codename1_ui_accessibility_AccessibilityChildProvider.m -com_codename1_ui_accessibility_AccessibilityCollectionInfo.m -com_codename1_ui_accessibility_AccessibilityCollectionItemInfo.m -com_codename1_ui_accessibility_AccessibilityGrouping.m -com_codename1_ui_accessibility_AccessibilityInspector.m -com_codename1_ui_accessibility_AccessibilityIssue.m -com_codename1_ui_accessibility_AccessibilityIssue_Severity.m -com_codename1_ui_accessibility_AccessibilityLiveRegion.m -com_codename1_ui_accessibility_AccessibilityManager.m -com_codename1_ui_accessibility_AccessibilityManager_1.m -com_codename1_ui_accessibility_AccessibilityManager_ActivateHandler.m -com_codename1_ui_accessibility_AccessibilityManager_BuildNode.m -com_codename1_ui_accessibility_AccessibilityManager_FocusHandler.m -com_codename1_ui_accessibility_AccessibilityManager_ListActivateHandler.m -com_codename1_ui_accessibility_AccessibilityManager_ListScrollHandler.m -com_codename1_ui_accessibility_AccessibilityManager_RefreshPass.m -com_codename1_ui_accessibility_AccessibilityManager_SetTextHandler.m -com_codename1_ui_accessibility_AccessibilityManager_SliderAdjustmentHandler.m -com_codename1_ui_accessibility_AccessibilityManager_SortKeyComparator.m -com_codename1_ui_accessibility_AccessibilityNode.m -com_codename1_ui_accessibility_AccessibilityNodeSnapshot.m -com_codename1_ui_accessibility_AccessibilityNodeSnapshot_Builder.m -com_codename1_ui_accessibility_AccessibilityRange.m -com_codename1_ui_accessibility_AccessibilityRole.m -com_codename1_ui_accessibility_AccessibilityTreeSnapshot.m -com_codename1_ui_animations_Animation.m -com_codename1_ui_animations_AnimationObject.m -com_codename1_ui_animations_AnimationTime.m -com_codename1_ui_animations_BubbleTransition.m -com_codename1_ui_animations_CommonTransitions.m -com_codename1_ui_animations_ComponentAnimation.m -com_codename1_ui_animations_ComponentAnimation_CompoundAnimation.m -com_codename1_ui_animations_ComponentAnimation_UIMutation.m -com_codename1_ui_animations_FlipTransition.m -com_codename1_ui_animations_MorphTransition.m -com_codename1_ui_animations_MorphTransition_CC.m -com_codename1_ui_animations_MorphTransition_MorphElement.m -com_codename1_ui_animations_Motion.m -com_codename1_ui_animations_Timeline.m -com_codename1_ui_animations_Transition.m -com_codename1_ui_editor_BidiUtil.m -com_codename1_ui_editor_CodePureEditor.m -com_codename1_ui_editor_CodeView.m -com_codename1_ui_editor_EditorDocument.m -com_codename1_ui_editor_EditorHost.m -com_codename1_ui_editor_EditorView.m -com_codename1_ui_editor_EditorView_1.m -com_codename1_ui_editor_HtmlImporter.m -com_codename1_ui_editor_HtmlImporter_Result.m -com_codename1_ui_editor_HtmlSerializer.m -com_codename1_ui_editor_InlineStyles.m -com_codename1_ui_editor_InlineStyles_StylePredicate.m -com_codename1_ui_editor_InlineStyles_StyleTransform.m -com_codename1_ui_editor_LanguageDef.m -com_codename1_ui_editor_PureEditor.m -com_codename1_ui_editor_RichBlocks.m -com_codename1_ui_editor_RichBlocks_BlockAttr.m -com_codename1_ui_editor_RichPureEditor.m -com_codename1_ui_editor_RichTextImporter.m -com_codename1_ui_editor_RichTextImporter_1.m -com_codename1_ui_editor_RichTextImporter_ModelBuilder.m -com_codename1_ui_editor_RichTextImporter_RtfState.m -com_codename1_ui_editor_RichTextSerializer.m -com_codename1_ui_editor_RichView.m -com_codename1_ui_editor_RichView_1.m -com_codename1_ui_editor_RichView_10.m -com_codename1_ui_editor_RichView_11.m -com_codename1_ui_editor_RichView_12.m -com_codename1_ui_editor_RichView_13.m -com_codename1_ui_editor_RichView_2.m -com_codename1_ui_editor_RichView_3.m -com_codename1_ui_editor_RichView_4.m -com_codename1_ui_editor_RichView_5.m -com_codename1_ui_editor_RichView_6.m -com_codename1_ui_editor_RichView_7.m -com_codename1_ui_editor_RichView_8.m -com_codename1_ui_editor_RichView_9.m -com_codename1_ui_editor_RichView_BlockOp.m -com_codename1_ui_editor_RichView_RichState.m -com_codename1_ui_editor_SyntaxHighlightResult.m -com_codename1_ui_editor_SyntaxHighlighter.m -com_codename1_ui_editor_SyntaxToken.m -com_codename1_ui_editor_TextStyle.m -com_codename1_ui_editor_ThemePalette.m -com_codename1_ui_editor_Tokenizer.m -com_codename1_ui_editor_UndoManager.m -com_codename1_ui_editor_UndoManager_Edit.m -com_codename1_ui_events_ActionEvent.m -com_codename1_ui_events_ActionEvent_Type.m -com_codename1_ui_events_ActionListener.m -com_codename1_ui_events_ActionSource.m -com_codename1_ui_events_BrowserNavigationCallback.m -com_codename1_ui_events_ComponentStateChangeEvent.m -com_codename1_ui_events_DataChangedListener.m -com_codename1_ui_events_FocusListener.m -com_codename1_ui_events_MessageEvent.m -com_codename1_ui_events_PointerEvent.m -com_codename1_ui_events_ScrollListener.m -com_codename1_ui_events_SelectionListener.m -com_codename1_ui_events_StyleListener.m -com_codename1_ui_events_WheelEvent.m -com_codename1_ui_events_WindowEvent.m -com_codename1_ui_events_WindowEvent_Type.m -com_codename1_ui_geom_AffineTransform.m -com_codename1_ui_geom_Dimension.m -com_codename1_ui_geom_Dimension2D.m -com_codename1_ui_geom_GeneralPath.m -com_codename1_ui_geom_GeneralPath_1.m -com_codename1_ui_geom_GeneralPath_EPoint.m -com_codename1_ui_geom_GeneralPath_Ellipse.m -com_codename1_ui_geom_GeneralPath_Iterator.m -com_codename1_ui_geom_GeneralPath_Pt.m -com_codename1_ui_geom_GeneralPath_ShapeUtil.m -com_codename1_ui_geom_GeneralPath_ShapeUtil_CubicCurve.m -com_codename1_ui_geom_GeneralPath_ShapeUtil_QuadCurve.m -com_codename1_ui_geom_Geometry.m -com_codename1_ui_geom_Geometry_BezierCurve.m -com_codename1_ui_geom_PathIterator.m -com_codename1_ui_geom_Point.m -com_codename1_ui_geom_Point2D.m -com_codename1_ui_geom_Rectangle.m -com_codename1_ui_geom_Rectangle2D.m -com_codename1_ui_geom_Shape.m -com_codename1_ui_html_AsyncDocumentRequestHandler.m -com_codename1_ui_html_CSSBgPainter.m -com_codename1_ui_html_CSSElement.m -com_codename1_ui_html_CSSElement_AttString.m -com_codename1_ui_html_CSSEngine.m -com_codename1_ui_html_CSSEngine_CSSEngineHolder.m -com_codename1_ui_html_CSSParser.m -com_codename1_ui_html_CSSParserCallback.m -com_codename1_ui_html_CSSParser_CSSParserHolder.m -com_codename1_ui_html_CSSParser_ExtInputStreamReader.m -com_codename1_ui_html_CellConstraint.m -com_codename1_ui_html_DefaultDocumentRequestHandler.m -com_codename1_ui_html_DocumentInfo.m -com_codename1_ui_html_DocumentRequestHandler.m -com_codename1_ui_html_HTMLCallback.m -com_codename1_ui_html_HTMLComponent.m -com_codename1_ui_html_HTMLComponent_1.m -com_codename1_ui_html_HTMLComponent_2.m -com_codename1_ui_html_HTMLComponent_3.m -com_codename1_ui_html_HTMLComponent_4.m -com_codename1_ui_html_HTMLComponent_5.m -com_codename1_ui_html_HTMLComponent_6.m -com_codename1_ui_html_HTMLComponent_ForLabel.m -com_codename1_ui_html_HTMLComponent_HTMLBullet.m -com_codename1_ui_html_HTMLComponent_HTMLComboBox.m -com_codename1_ui_html_HTMLComponent_HTMLListIndex.m -com_codename1_ui_html_HTMLComponent_InputFormatRunnable.m -com_codename1_ui_html_HTMLComponent_RedirectThread.m -com_codename1_ui_html_HTMLElement.m -com_codename1_ui_html_HTMLEventsListener.m -com_codename1_ui_html_HTMLEventsListener_1.m -com_codename1_ui_html_HTMLEventsListener_2.m -com_codename1_ui_html_HTMLFont.m -com_codename1_ui_html_HTMLForm.m -com_codename1_ui_html_HTMLForm_NamedCommand.m -com_codename1_ui_html_HTMLImageMap.m -com_codename1_ui_html_HTMLInputFormat.m -com_codename1_ui_html_HTMLInputFormat_ConstraintsTextField.m -com_codename1_ui_html_HTMLInputFormat_FormatConstraint.m -com_codename1_ui_html_HTMLLink.m -com_codename1_ui_html_HTMLListItem.m -com_codename1_ui_html_HTMLParser.m -com_codename1_ui_html_HTMLParser_FragmentHTMLElement.m -com_codename1_ui_html_HTMLTable.m -com_codename1_ui_html_HTMLTableModel.m -com_codename1_ui_html_HTMLUtils.m -com_codename1_ui_html_IOCallback.m -com_codename1_ui_html_ImageMapData.m -com_codename1_ui_html_MultiComboBox.m -com_codename1_ui_html_MultiComboBox_MultiCellRenderer.m -com_codename1_ui_html_MultiComboBox_MultiListModel.m -com_codename1_ui_html_OptionItem.m -com_codename1_ui_html_ResourceThreadQueue.m -com_codename1_ui_html_ResourceThreadQueue_ResourceThread.m -com_codename1_ui_html_ResourceThreadQueue_ResourceThread_1.m -com_codename1_ui_layouts_BorderLayout.m -com_codename1_ui_layouts_BoxLayout.m -com_codename1_ui_layouts_FlowLayout.m -com_codename1_ui_layouts_GridLayout.m -com_codename1_ui_layouts_LayeredLayout.m -com_codename1_ui_layouts_LayeredLayout_1.m -com_codename1_ui_layouts_LayeredLayout_ChildrenInTraversalOrderComparator.m -com_codename1_ui_layouts_LayeredLayout_LayeredLayoutConstraint.m -com_codename1_ui_layouts_LayeredLayout_LayeredLayoutConstraint_Inset.m -com_codename1_ui_layouts_Layout.m -com_codename1_ui_list_CellRenderer.m -com_codename1_ui_list_DefaultListCellRenderer.m -com_codename1_ui_list_DefaultListModel.m -com_codename1_ui_list_ListCellRenderer.m -com_codename1_ui_list_ListModel.m -com_codename1_ui_list_MultipleSelectionListModel.m -com_codename1_ui_plaf_Border.m -com_codename1_ui_plaf_Border_EmptyBorderHolder.m -com_codename1_ui_plaf_CSSBorder.m -com_codename1_ui_plaf_CSSBorder_1.m -com_codename1_ui_plaf_CSSBorder_10.m -com_codename1_ui_plaf_CSSBorder_11.m -com_codename1_ui_plaf_CSSBorder_12.m -com_codename1_ui_plaf_CSSBorder_13.m -com_codename1_ui_plaf_CSSBorder_14.m -com_codename1_ui_plaf_CSSBorder_15.m -com_codename1_ui_plaf_CSSBorder_2.m -com_codename1_ui_plaf_CSSBorder_3.m -com_codename1_ui_plaf_CSSBorder_4.m -com_codename1_ui_plaf_CSSBorder_5.m -com_codename1_ui_plaf_CSSBorder_6.m -com_codename1_ui_plaf_CSSBorder_7.m -com_codename1_ui_plaf_CSSBorder_8.m -com_codename1_ui_plaf_CSSBorder_9.m -com_codename1_ui_plaf_CSSBorder_Arrow.m -com_codename1_ui_plaf_CSSBorder_BackgroundImage.m -com_codename1_ui_plaf_CSSBorder_BorderImage.m -com_codename1_ui_plaf_CSSBorder_BorderRadius.m -com_codename1_ui_plaf_CSSBorder_BorderStroke.m -com_codename1_ui_plaf_CSSBorder_BoxShadow.m -com_codename1_ui_plaf_CSSBorder_Color.m -com_codename1_ui_plaf_CSSBorder_ColorStop.m -com_codename1_ui_plaf_CSSBorder_Context.m -com_codename1_ui_plaf_CSSBorder_Decorator.m -com_codename1_ui_plaf_CSSBorder_LinearGradient.m -com_codename1_ui_plaf_CSSBorder_RadialGradient.m -com_codename1_ui_plaf_CSSBorder_ScalarUnit.m -com_codename1_ui_plaf_DefaultLookAndFeel.m -com_codename1_ui_plaf_DefaultLookAndFeel_1.m -com_codename1_ui_plaf_DefaultLookAndFeel_1_1.m -com_codename1_ui_plaf_DefaultLookAndFeel_2.m -com_codename1_ui_plaf_DefaultLookAndFeel_PullToRefreshComponentClosure.m -com_codename1_ui_plaf_GlassRecipe.m -com_codename1_ui_plaf_GlassRecipe_Kind.m -com_codename1_ui_plaf_LookAndFeel.m -com_codename1_ui_plaf_LookAndFeel_InteractiveScrollThumb.m -com_codename1_ui_plaf_RoundBorder.m -com_codename1_ui_plaf_RoundBorder_1.m -com_codename1_ui_plaf_RoundBorder_CacheValue.m -com_codename1_ui_plaf_RoundBorder_SolidPaint.m -com_codename1_ui_plaf_RoundRectBorder.m -com_codename1_ui_plaf_RoundRectBorder_1.m -com_codename1_ui_plaf_RoundRectBorder_2.m -com_codename1_ui_plaf_Style.m -com_codename1_ui_plaf_StyleParser.m -com_codename1_ui_plaf_StyleParser_BorderInfo.m -com_codename1_ui_plaf_StyleParser_BoxInfo.m -com_codename1_ui_plaf_StyleParser_FontInfo.m -com_codename1_ui_plaf_StyleParser_ImageInfo.m -com_codename1_ui_plaf_StyleParser_MarginInfo.m -com_codename1_ui_plaf_StyleParser_PaddingInfo.m -com_codename1_ui_plaf_StyleParser_ScalarValue.m -com_codename1_ui_plaf_StyleParser_StyleInfo.m -com_codename1_ui_plaf_UIManager.m -com_codename1_ui_plaf_UIManager_UIManagerHolder.m -com_codename1_ui_scene_Bounds.m -com_codename1_ui_scene_Camera.m -com_codename1_ui_scene_Node.m -com_codename1_ui_scene_NodePainter.m -com_codename1_ui_scene_PerspectiveCamera.m -com_codename1_ui_scene_Point3D.m -com_codename1_ui_scene_Scene.m -com_codename1_ui_scene_TextPainter.m -com_codename1_ui_spinner_BaseSpinner.m -com_codename1_ui_spinner_BaseSpinner_ParentRepaintingLabel.m -com_codename1_ui_spinner_CalendarPicker.m -com_codename1_ui_spinner_DateSpinner.m -com_codename1_ui_spinner_DateSpinner3D.m -com_codename1_ui_spinner_DateSpinner3D_1.m -com_codename1_ui_spinner_DateSpinner3D_DayRowFormatter.m -com_codename1_ui_spinner_DateSpinner3D_MonthRowFormatter.m -com_codename1_ui_spinner_DateSpinner3D_YearRowFormatter.m -com_codename1_ui_spinner_DateSpinner_1.m -com_codename1_ui_spinner_DateTimeRenderer.m -com_codename1_ui_spinner_DateTimeSpinner.m -com_codename1_ui_spinner_DateTimeSpinner3D.m -com_codename1_ui_spinner_DurationSpinner3D.m -com_codename1_ui_spinner_GenericSpinner.m -com_codename1_ui_spinner_InternalPickerWidget.m -com_codename1_ui_spinner_Picker.m -com_codename1_ui_spinner_Picker_1.m -com_codename1_ui_spinner_Picker_1_1.m -com_codename1_ui_spinner_Picker_1_2.m -com_codename1_ui_spinner_Picker_1_2_1.m -com_codename1_ui_spinner_Picker_1_3.m -com_codename1_ui_spinner_Picker_1_4.m -com_codename1_ui_spinner_Picker_1_5.m -com_codename1_ui_spinner_Picker_1_6.m -com_codename1_ui_spinner_Picker_1_7.m -com_codename1_ui_spinner_Picker_1_8.m -com_codename1_ui_spinner_Picker_1_9.m -com_codename1_ui_spinner_Picker_2.m -com_codename1_ui_spinner_Picker_3.m -com_codename1_ui_spinner_Picker_3_1.m -com_codename1_ui_spinner_Picker_4.m -com_codename1_ui_spinner_Picker_4_1.m -com_codename1_ui_spinner_Picker_DateGetter.m -com_codename1_ui_spinner_Picker_LightweightPopupButton.m -com_codename1_ui_spinner_Picker_PopupButtonActionListener.m -com_codename1_ui_spinner_Spinner.m -com_codename1_ui_spinner_Spinner3D.m -com_codename1_ui_spinner_Spinner3D_1.m -com_codename1_ui_spinner_Spinner3D_2.m -com_codename1_ui_spinner_Spinner3D_3.m -com_codename1_ui_spinner_Spinner3D_4.m -com_codename1_ui_spinner_Spinner3D_DateModelAdapter.m -com_codename1_ui_spinner_Spinner3D_NumberModelAdapter.m -com_codename1_ui_spinner_Spinner3D_ScrollingContainer.m -com_codename1_ui_spinner_SpinnerDateModel.m -com_codename1_ui_spinner_SpinnerNode.m -com_codename1_ui_spinner_SpinnerNode_1.m -com_codename1_ui_spinner_SpinnerNode_2.m -com_codename1_ui_spinner_SpinnerNode_RowFormatter.m -com_codename1_ui_spinner_SpinnerNode_SpinnerNodePainter.m -com_codename1_ui_spinner_SpinnerNode_SpinnerRenderer.m -com_codename1_ui_spinner_SpinnerNumberModel.m -com_codename1_ui_spinner_SpinnerRenderer.m -com_codename1_ui_spinner_TimeSpinner.m -com_codename1_ui_spinner_TimeSpinner3D.m -com_codename1_ui_spinner_TimeSpinner3D_1.m -com_codename1_ui_spinner_TimeSpinner3D_AmPmRowFormatter.m -com_codename1_ui_spinner_TimeSpinner3D_HourRowFormatter.m -com_codename1_ui_spinner_TimeSpinner3D_MinuteRowFormatter.m -com_codename1_ui_spinner_TimeSpinner_1.m -com_codename1_ui_spinner_TimeSpinner_TimeSpinnerRenderer.m -com_codename1_ui_spinner_TimeSpinner_TwoDigitSpinnerRenderer.m -com_codename1_ui_table_AbstractTableModel.m -com_codename1_ui_table_DefaultTableModel.m -com_codename1_ui_table_SortableTableModel.m -com_codename1_ui_table_SortableTableModel_TemporarySorterComparator.m -com_codename1_ui_table_Table.m -com_codename1_ui_table_TableLayout.m -com_codename1_ui_table_TableLayout_Constraint.m -com_codename1_ui_table_TableModel.m -com_codename1_ui_table_Table_1.m -com_codename1_ui_table_Table_ColumnSortComparator.m -com_codename1_ui_table_Table_Listener.m -com_codename1_ui_tree_Tree.m -com_codename1_ui_tree_TreeModel.m -com_codename1_ui_tree_Tree_Handler.m -com_codename1_ui_tree_Tree_StringArrayTreeModel.m -com_codename1_ui_util_Effects.m -com_codename1_ui_util_EventDispatcher.m -com_codename1_ui_util_EventDispatcher_CallbackClass.m -com_codename1_ui_util_ImageIO.m -com_codename1_ui_util_Resources.m -com_codename1_ui_util_Resources_MediaRule.m -com_codename1_ui_util_UITimer.m -com_codename1_ui_util_UITimer_Internal.m -com_codename1_ui_util_WeakHashMap.m -com_codename1_ui_validation_Constraint.m -com_codename1_ui_validation_GroupConstraint.m -com_codename1_ui_validation_LengthConstraint.m -com_codename1_ui_validation_Validator.m -com_codename1_ui_validation_Validator_1.m -com_codename1_ui_validation_Validator_1_1.m -com_codename1_ui_validation_Validator_2.m -com_codename1_ui_validation_Validator_3.m -com_codename1_ui_validation_Validator_3_1.m -com_codename1_ui_validation_Validator_ComponentListener.m -com_codename1_ui_validation_Validator_ConstraintFocusListener.m -com_codename1_ui_validation_Validator_HighlightMode.m -com_codename1_util_AsyncResource.m -com_codename1_util_AsyncResource_12.m -com_codename1_util_AsyncResource_13.m -com_codename1_util_AsyncResource_6.m -com_codename1_util_AsyncResource_7.m -com_codename1_util_AsyncResource_8.m -com_codename1_util_AsyncResource_9.m -com_codename1_util_AsyncResource_AsyncCallback.m -com_codename1_util_AsyncResource_AsyncCallback_1.m -com_codename1_util_AsyncResource_AsyncCallback_2.m -com_codename1_util_AsyncResource_AsyncExecutionException.m -com_codename1_util_AsyncResource_CancellationException.m -com_codename1_util_AsyncResult.m -com_codename1_util_Base64.m -com_codename1_util_Callback.m -com_codename1_util_CallbackAdapter.m -com_codename1_util_CallbackDispatcher.m -com_codename1_util_CaseInsensitiveOrder.m -com_codename1_util_DateUtil.m -com_codename1_util_EasyThread.m -com_codename1_util_EasyThread_1.m -com_codename1_util_EasyThread_ErrorListener.m -com_codename1_util_FailureCallback.m -com_codename1_util_LazyValue.m -com_codename1_util_MathUtil.m -com_codename1_util_RunnableWithResult.m -com_codename1_util_Simd.m -com_codename1_util_StringUtil.m -com_codename1_util_SuccessCallback.m -com_codename1_util_regex_CharacterIterator.m -com_codename1_util_regex_RE.m -com_codename1_util_regex_RECharacter.m -com_codename1_util_regex_RECompiler.m -com_codename1_util_regex_RECompiler_RERange.m -com_codename1_util_regex_REProgram.m -com_codename1_util_regex_RESyntaxException.m -com_codename1_util_regex_StringCharacterIterator.m -com_codename1_vpn_VpnError.m -com_codename1_vpn_VpnException.m -com_codename1_vpn_VpnStatus.m -com_codename1_vpn_profile_Vpn.m -com_codename1_vpn_profile_VpnStatusListener.m -com_codename1_vpn_profile_Vpn_StatusEvent.m -com_codename1_vpn_spi_VpnBridge.m -com_codename1_vpn_tunnel_PacketBuffer.m -com_codename1_vpn_tunnel_TunnelTransport.m -com_codename1_vpn_tunnel_Tunnels.m -com_codename1_vpn_tunnel_VpnTunnel.m -com_codename1_vr_HeadTracker.m -com_codename1_vr_HeadTracker_1.m -com_codename1_vr_HeadTracker_2.m -com_codename1_vr_HeadTracker_3.m -com_codename1_vr_Media360View.m -com_codename1_vr_Media360View_1.m -com_codename1_vr_Media360View_SphereLoop.m -com_codename1_vr_OrientationFilter.m -com_codename1_vr_TextureSource.m -com_codename1_vr_VRCameraRig.m -com_codename1_vr_VREye.m -com_codename1_vr_VRRenderer.m -com_codename1_vr_VRSettings.m -com_codename1_vr_VRView.m -com_codename1_vr_VRView_1.m -com_codename1_vr_VRView_EyeLoop.m -com_codename1_wearable_WearableConnection.m -com_codename1_wearable_WearableConnection_1.m -com_codename1_wearable_WearableConnection_2.m -com_codename1_wearable_WearableConnection_3.m -com_codename1_wearable_WearableConnection_4.m -com_codename1_wearable_WearableConnection_5.m -com_codename1_wearable_WearableConnection_6.m -com_codename1_wearable_WearableConnection_7.m -com_codename1_wearable_WearableConnection_8.m -com_codename1_wearable_WearableConnection_9.m -com_codename1_wearable_WearableConnection_DroppedDeliveryHandler.m -com_codename1_wearable_WearableConnection_OneShot.m -com_codename1_wearable_WearableConnection_PendingReply.m -com_codename1_wearable_WearableConnection_Replicated.m -com_codename1_wearable_WearableDataListener.m -com_codename1_wearable_WearableMessage.m -com_codename1_wearable_WearableMessageListener.m -com_codename1_wearable_WearableReplyHandler.m -com_codename1_wearable_WearableStateListener.m -com_codename1_wearable_spi_WearableBridge.m -com_codename1_xml_Element.m -com_codename1_xml_ParserCallback.m -com_codename1_xml_XMLParser.m -com_codenameone_examples_hellocodenameone_ArrayGuardDemo.m -com_codenameone_examples_hellocodenameone_ArrayGuardDemo_Holder.m -com_codenameone_examples_hellocodenameone_Base64Native.m -com_codenameone_examples_hellocodenameone_Base64NativeImpl.m -com_codenameone_examples_hellocodenameone_Base64NativeImplCodenameOne.m -com_codenameone_examples_hellocodenameone_Base64NativeStub.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo_AlternateFormatter.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo_BaseFormatter.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo_ChildFormatter.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo_lambda_0.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo_lambda_1.m -com_codenameone_examples_hellocodenameone_DefaultMethodDemo_lambda_2.m -com_codenameone_examples_hellocodenameone_DemoNote.m -com_codenameone_examples_hellocodenameone_HelloCarApplication.m -com_codenameone_examples_hellocodenameone_HelloCarApplication_onCreateRootScreen_1.m -com_codenameone_examples_hellocodenameone_HelloCodenameOne.m -com_codenameone_examples_hellocodenameone_HelloCodenameOneStub.m -com_codenameone_examples_hellocodenameone_HelloCodenameOneStub_1.m -com_codenameone_examples_hellocodenameone_HelloCodenameOneWatch.m -com_codenameone_examples_hellocodenameone_HelloCodenameOneWatchStub.m -com_codenameone_examples_hellocodenameone_HelloCodenameOneWatchStub_1.m -com_codenameone_examples_hellocodenameone_HelloCodenameOne_lambda_0.m -com_codenameone_examples_hellocodenameone_InPlaceEditViewNative.m -com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeImpl.m -com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeImplCodenameOne.m -com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeStub.m -com_codenameone_examples_hellocodenameone_IntentsDemo.m -com_codenameone_examples_hellocodenameone_LocalNotificationNative.m -com_codenameone_examples_hellocodenameone_LocalNotificationNativeImpl.m -com_codenameone_examples_hellocodenameone_LocalNotificationNativeImplCodenameOne.m -com_codenameone_examples_hellocodenameone_LocalNotificationNativeStub.m -com_codenameone_examples_hellocodenameone_NativeInterfaceLanguageValidator.m -com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNative.m -com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeImpl.m -com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeImplCodenameOne.m -com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeStub.m -com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNative.m -com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeImpl.m -com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeImplCodenameOne.m -com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeStub.m -com_codenameone_examples_hellocodenameone_SwiftKotlinNative.m -com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImpl.m -com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImplCodenameOne.m -com_codenameone_examples_hellocodenameone_SwiftKotlinNativeStub.m -com_codenameone_examples_hellocodenameone_tests_ARApiTest.m -com_codenameone_examples_hellocodenameone_tests_ARApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_AbstractAnimationScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_AbstractComponentReplaceScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AbstractContainerAnimationScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_3.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_4.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_5.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_5_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_5_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_AbstractGraphicsScreenshotTest_CleanPaintComponent.m -com_codenameone_examples_hellocodenameone_tests_AbstractStickyHeaderScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AbstractTransitionScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AdsScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AdsScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_AdsScreenshotTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_AnimateHierarchyScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AnimateLayoutScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AnimateUnlayoutScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AppReviewDialogScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest.m -com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest_2.m -com_codenameone_examples_hellocodenameone_tests_AudioMixerApiTest_3.m -com_codenameone_examples_hellocodenameone_tests_BackgroundThreadUiAccessTest.m -com_codenameone_examples_hellocodenameone_tests_BackgroundThreadUiAccessTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_Base64NativePerformanceTest.m -com_codenameone_examples_hellocodenameone_tests_BaseTest.m -com_codenameone_examples_hellocodenameone_tests_BaseTest_1.m -com_codenameone_examples_hellocodenameone_tests_BaseTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_BaseTest_FirstPaintGate.m -com_codenameone_examples_hellocodenameone_tests_BaseTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_BaseTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_BaseTest_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_BridgeBulkTransferGuardTest.m -com_codenameone_examples_hellocodenameone_tests_BridgeBulkTransferGuardTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_BrowserComponentScreenshotTest_lambda_4.m -com_codenameone_examples_hellocodenameone_tests_ButtonThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_CommonCanvas.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_GameCell.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_GameConstants.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_GameViewer.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Hue.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Marker.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_PanelCanvas.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_ProxyCanvas.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_ShellComponent.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Sketchable.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_SlotProvider.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_StackTile.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_Tile.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_TokenMenu.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_TokenMenuHost.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_BytecodeTranslatorRegressionTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_CalendarApiTest.m -com_codenameone_examples_hellocodenameone_tests_CallDetectionAPITest.m -com_codenameone_examples_hellocodenameone_tests_CameraApiTest.m -com_codenameone_examples_hellocodenameone_tests_CameraApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_CenteredDialogTitleScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_CenteredInteractionDialogTitleScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ChatInputScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ChatInputScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_ChatViewScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_CheckBoxRadioThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ClipboardRoundTripTest.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper_TransportFailureState.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerHelper_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunnerReporter.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssDeviceRunner_lambda_6.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssHashTracker.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_1.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_2.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_3.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_4.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_5.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_6.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_7.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_8.m -com_codenameone_examples_hellocodenameone_tests_Cn1ssWebSocketSink_AckLatch.m -com_codenameone_examples_hellocodenameone_tests_CodeEditorScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_CodeEditorScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_CodeEditorScreenshotTest_1_1.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_1.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_10.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_2.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_3.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_4.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_5.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_6.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_7.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_8.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_9.m -com_codenameone_examples_hellocodenameone_tests_CommonWorkloadBenchmarkTest_Workload.m -com_codenameone_examples_hellocodenameone_tests_ComponentReplaceFadeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ComponentReplaceFlipScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ComponentReplaceSlideScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ContactPickerApiTest.m -com_codenameone_examples_hellocodenameone_tests_ContinuityStateTest.m -com_codenameone_examples_hellocodenameone_tests_ContinuityStateTest_1.m -com_codenameone_examples_hellocodenameone_tests_CoverHorizontalTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_CryptoApiTest.m -com_codenameone_examples_hellocodenameone_tests_CssFilterBlurScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_CssGradientsScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_DarkLightShowcaseThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseConformanceTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseConformanceTest_1.m -com_codenameone_examples_hellocodenameone_tests_DatabaseConformanceTest_DatabaseBody.m -com_codenameone_examples_hellocodenameone_tests_DatabaseCursorLegacyTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseCursorLegacyTest_1.m -com_codenameone_examples_hellocodenameone_tests_DatabaseCursorTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseCursorTest_1.m -com_codenameone_examples_hellocodenameone_tests_DatabaseEncryptionTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseLifecycleTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseStatementLegacyTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseStatementLegacyTest_1.m -com_codenameone_examples_hellocodenameone_tests_DatabaseStatementTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseStatementTest_1.m -com_codenameone_examples_hellocodenameone_tests_DatabaseTransactionTest.m -com_codenameone_examples_hellocodenameone_tests_DatabaseTransactionTest_1.m -com_codenameone_examples_hellocodenameone_tests_DesktopModeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_DeviceInputApiTest.m -com_codenameone_examples_hellocodenameone_tests_DeviceInputApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_DialogThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_DocumentProviderPublishTest.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_1_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_Annotation.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_AnnotationPainter.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_TextureBackdropPainter.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_DualAppearanceBaseTest_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_FadeTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_FileSystemStorageOpenInputStreamMissingTest.m -com_codenameone_examples_hellocodenameone_tests_FlipTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_FloatingActionButtonThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_FloatingToStringTest.m -com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_GoogleWebMapScreenshotTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DAnimationTest.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DAnimationTest_1.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DAnimationTest_2.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DCubeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DCubeScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DCubeScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DModelScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DModelScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DModelScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DTexturedCubeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DTexturedCubeScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_Gpu3DTexturedCubeScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_ImageViewerNavigationScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_InPlaceEditViewTest.m -com_codenameone_examples_hellocodenameone_tests_InferenceOnDeviceApiTest.m -com_codenameone_examples_hellocodenameone_tests_IntentsApiTest.m -com_codenameone_examples_hellocodenameone_tests_Java17Tests.m -com_codenameone_examples_hellocodenameone_tests_Java17Tests_MyRecord.m -com_codenameone_examples_hellocodenameone_tests_KotlinUiTest.m -com_codenameone_examples_hellocodenameone_tests_LandscapeCapture.m -com_codenameone_examples_hellocodenameone_tests_LandscapeCapture_1.m -com_codenameone_examples_hellocodenameone_tests_LandscapeCapture_2.m -com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest.m -com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_2.m -com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_3.m -com_codenameone_examples_hellocodenameone_tests_LanguageOnDeviceApiTest_ClosedSessionOperation.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_3.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_4.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_5.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_6.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_7.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1_1_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_8_1_1_1_1_1_1.m -com_codenameone_examples_hellocodenameone_tests_LightweightPickerButtonsScreenshotTest_Variant.m -com_codenameone_examples_hellocodenameone_tests_ListThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_LocalNotificationOverrideTest.m -com_codenameone_examples_hellocodenameone_tests_LogSubclassCaptureTest.m -com_codenameone_examples_hellocodenameone_tests_LogSubclassCaptureTest_CapturingLog.m -com_codenameone_examples_hellocodenameone_tests_LottieAnimatedScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_MainScreenScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_Media360PanoramaScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_Media360PanoramaScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_Media360PanoramaScreenshotTest_1_1.m -com_codenameone_examples_hellocodenameone_tests_MediaPlaybackScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_MediaPlaybackScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_MorphElementMorphScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_MorphTransitionScrolledSourceTest.m -com_codenameone_examples_hellocodenameone_tests_MorphTransitionScrubScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_MorphTransitionSnapshotTest.m -com_codenameone_examples_hellocodenameone_tests_MorphTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_MotionSensorDeviceTest.m -com_codenameone_examples_hellocodenameone_tests_MotionSensorDeviceTest_1.m -com_codenameone_examples_hellocodenameone_tests_MotionSensorDeviceTest_2.m -com_codenameone_examples_hellocodenameone_tests_MotionShowcaseScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_MultiButtonThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_MultiWindowApiTest.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_1.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_OverflowPainter.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_RedBounds.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_MutableImageClipReadbackTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest.m -com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest_1.m -com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_MutableImageReadbackTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_NanoTimeApiTest.m -com_codenameone_examples_hellocodenameone_tests_NativeMapFallbackScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_4.m -com_codenameone_examples_hellocodenameone_tests_OrientationLockScreenshotTest_lambda_5.m -com_codenameone_examples_hellocodenameone_tests_PaletteOverrideThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_1.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_2.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_3.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_3_1.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_4.m -com_codenameone_examples_hellocodenameone_tests_PickerCancelRestoreTest_4_1.m -com_codenameone_examples_hellocodenameone_tests_PickerThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_PullToRefreshSpinnerScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_PullToRefreshSpinnerScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_PureEditorScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_RealOsmVectorScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_RichTextAreaScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_RichTextAreaScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_RichTextAreaScreenshotTest_1_1.m -com_codenameone_examples_hellocodenameone_tests_SVGAnimatedScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SVGStaticScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ScreenshotPureEditors_Code.m -com_codenameone_examples_hellocodenameone_tests_ScreenshotPureEditors_Rich.m -com_codenameone_examples_hellocodenameone_tests_SecureStorageTest.m -com_codenameone_examples_hellocodenameone_tests_SheetScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SheetScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_SheetSlideUpAnimationScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SheetSlideUpAnimationScreenshotTest_DimScrimPainter.m -com_codenameone_examples_hellocodenameone_tests_SimdApiTest.m -com_codenameone_examples_hellocodenameone_tests_SimdBenchmarkTest.m -com_codenameone_examples_hellocodenameone_tests_SimdLargeAllocaTest.m -com_codenameone_examples_hellocodenameone_tests_SlideFadeTitleTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_SlideHorizontalBackTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_SlideHorizontalTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_SlideVerticalTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_SmoothScrollScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SmoothScrollScreenshotTest_ScrollContainer.m -com_codenameone_examples_hellocodenameone_tests_SpanLabelThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest_ScrollContainer.m -com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest_TestForm.m -com_codenameone_examples_hellocodenameone_tests_StatusBarTapDiagnosticScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_StickyHeaderFadeTransitionScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_StickyHeaderScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_StickyHeaderSlideTransitionScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_10.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_2.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_3.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_4.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_5.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_6.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_7.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_8.m -com_codenameone_examples_hellocodenameone_tests_StreamApiTest_9.m -com_codenameone_examples_hellocodenameone_tests_StringApiTest.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_FormatCall.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_10.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_11.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_12.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_13.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_14.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_15.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_16.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_17.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_18.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_19.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_20.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_21.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_22.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_4.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_5.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_6.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_7.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_8.m -com_codenameone_examples_hellocodenameone_tests_StringFormatTest_lambda_9.m -com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest.m -com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest_1.m -com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest_2.m -com_codenameone_examples_hellocodenameone_tests_SurfacesActionDispatchTest_3.m -com_codenameone_examples_hellocodenameone_tests_SurfacesPublishTest.m -com_codenameone_examples_hellocodenameone_tests_SurfacesRasterizerScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SurfacesRasterizerScreenshotTest_RasterizerView.m -com_codenameone_examples_hellocodenameone_tests_SurfacesRemoteViewsScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SurfacesSerializerRoundTripTest.m -com_codenameone_examples_hellocodenameone_tests_SurfacesTimelineLogicTest.m -com_codenameone_examples_hellocodenameone_tests_SwitchThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_SystemBackNavigationTest.m -com_codenameone_examples_hellocodenameone_tests_SystemBackNavigationTest_1.m -com_codenameone_examples_hellocodenameone_tests_SystemBackNavigationTest_2.m -com_codenameone_examples_hellocodenameone_tests_TabsAnimatedIndicatorScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TabsLiquidGlassAnimationScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TabsLiquidGlassAnimationScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_TabsScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TabsThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TensileBounceScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TensileBounceScreenshotTest_ScrollContainer.m -com_codenameone_examples_hellocodenameone_tests_TextAreaAlignmentScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TextFieldThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_TimeApiTest.m -com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_2.m -com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_3.m -com_codenameone_examples_hellocodenameone_tests_ToastBarTopPositionScreenshotTest_lambda_4.m -com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_ToolbarThemeScreenshotTest_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_UncoverHorizontalTransitionTest.m -com_codenameone_examples_hellocodenameone_tests_VPNDetectionAPITest.m -com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_VRStereoSceneScreenshotTest_2_1.m -com_codenameone_examples_hellocodenameone_tests_ValidatorLightweightPickerScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_VectorMapDarkStyleScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_VectorMapMarkersScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_VectorMapScreenshotBaseTest.m -com_codenameone_examples_hellocodenameone_tests_VectorMapScreenshotBaseTest_1.m -com_codenameone_examples_hellocodenameone_tests_VectorMapShapesScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest_1.m -com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest_1_1.m -com_codenameone_examples_hellocodenameone_tests_VideoIODecodedFramesScreenshotTest_2.m -com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest.m -com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_1.m -com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_2.m -com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_3.m -com_codenameone_examples_hellocodenameone_tests_VideoIORoundTripTest_4.m -com_codenameone_examples_hellocodenameone_tests_VisionOnDeviceApiTest.m -com_codenameone_examples_hellocodenameone_tests_VisionOnDeviceApiTest_1.m -com_codenameone_examples_hellocodenameone_tests_VisionOnDeviceApiTest_2.m -com_codenameone_examples_hellocodenameone_tests_WindowDialogTest.m -com_codenameone_examples_hellocodenameone_tests_WindowDialogTest_1.m -com_codenameone_examples_hellocodenameone_tests_WindowEditingTest.m -com_codenameone_examples_hellocodenameone_tests_WindowGraphicsTest.m -com_codenameone_examples_hellocodenameone_tests_WindowGraphicsTest_1.m -com_codenameone_examples_hellocodenameone_tests_WindowHostTest.m -com_codenameone_examples_hellocodenameone_tests_WindowHostTest_1.m -com_codenameone_examples_hellocodenameone_tests_WindowHostTest_2.m -com_codenameone_examples_hellocodenameone_tests_WindowHostTest_3.m -com_codenameone_examples_hellocodenameone_tests_WindowHostTest_3_1.m -com_codenameone_examples_hellocodenameone_tests_WindowHostTest_4.m -com_codenameone_examples_hellocodenameone_tests_WindowLayoutTest.m -com_codenameone_examples_hellocodenameone_tests_WindowModalTest.m -com_codenameone_examples_hellocodenameone_tests_WindowModalTest_1.m -com_codenameone_examples_hellocodenameone_tests_WindowModalTest_2.m -com_codenameone_examples_hellocodenameone_tests_WindowModalTest_3.m -com_codenameone_examples_hellocodenameone_tests_WindowOverlayTest.m -com_codenameone_examples_hellocodenameone_tests_WindowOverlayTest_1.m -com_codenameone_examples_hellocodenameone_tests_WindowScrollTest.m -com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest.m -com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_1.m -com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_2.m -com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_3.m -com_codenameone_examples_hellocodenameone_tests_accessibility_AccessibilityTest_4.m -com_codenameone_examples_hellocodenameone_tests_charts_AbstractChartScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartBarScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartBubbleScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartCombinedXYScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartCubicLineScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartDoughnutScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartLineScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartPieScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartRadarScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartRangeBarScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartRotatedScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartScatterScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartStackedBarScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartTimeChartScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_charts_ChartTransformScreenshotTest.m -com_codenameone_examples_hellocodenameone_tests_graphics_AffineScale.m -com_codenameone_examples_hellocodenameone_tests_graphics_Clip.m -com_codenameone_examples_hellocodenameone_tests_graphics_ClipUnderRotation.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawArc.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawGradient.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawGradientStops.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawImage.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawLine.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawRect.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawRoundRect.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawShape.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawString.m -com_codenameone_examples_hellocodenameone_tests_graphics_DrawStringDecorated.m -com_codenameone_examples_hellocodenameone_tests_graphics_EmptyClip.m -com_codenameone_examples_hellocodenameone_tests_graphics_FillArc.m -com_codenameone_examples_hellocodenameone_tests_graphics_FillPolygon.m -com_codenameone_examples_hellocodenameone_tests_graphics_FillRect.m -com_codenameone_examples_hellocodenameone_tests_graphics_FillRoundRect.m -com_codenameone_examples_hellocodenameone_tests_graphics_FillShape.m -com_codenameone_examples_hellocodenameone_tests_graphics_FillTriangle.m -com_codenameone_examples_hellocodenameone_tests_graphics_GaussianBlur.m -com_codenameone_examples_hellocodenameone_tests_graphics_InscribedTriangleGrid.m -com_codenameone_examples_hellocodenameone_tests_graphics_LargeStrokeDirtyClipTest.m -com_codenameone_examples_hellocodenameone_tests_graphics_LargeStrokeDirtyClipTest_LargeStrokeComponent.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_1.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_1_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_EscapeComponent.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_SolidComponent.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_lambda_0.m -com_codenameone_examples_hellocodenameone_tests_graphics_PartialFlushClipEscape_lambda_1.m -com_codenameone_examples_hellocodenameone_tests_graphics_Rotate.m -com_codenameone_examples_hellocodenameone_tests_graphics_Scale.m -com_codenameone_examples_hellocodenameone_tests_graphics_StrokeTest.m -com_codenameone_examples_hellocodenameone_tests_graphics_TileImage.m -com_codenameone_examples_hellocodenameone_tests_graphics_TransformCamera.m -com_codenameone_examples_hellocodenameone_tests_graphics_TransformPerspective.m -com_codenameone_examples_hellocodenameone_tests_graphics_TransformRotation.m -com_codenameone_examples_hellocodenameone_tests_graphics_TransformTranslation.m -java_io_ByteArrayInputStream.m -java_io_ByteArrayOutputStream.m -java_io_DataInput.m -java_io_DataInputStream.m -java_io_DataOutput.m -java_io_DataOutputStream.m -java_io_EOFException.m -java_io_File.m -java_io_FileInputStream.m -java_io_FileNotFoundException.m -java_io_FileOutputStream.m -java_io_FilterInputStream.m -java_io_FilterOutputStream.m -java_io_IOException.m -java_io_InputStream.m -java_io_InputStreamReader.m -java_io_NSLogOutputStream.m -java_io_OutputStream.m -java_io_OutputStreamWriter.m -java_io_PrintStream.m -java_io_Reader.m -java_io_Serializable.m -java_io_StandardInputStream.m -java_io_StringReader.m -java_io_StringWriter.m -java_io_UnsupportedEncodingException.m -java_io_Writer.m -java_lang_Appendable.m -java_lang_ArrayIndexOutOfBoundsException.m -java_lang_ArrayStoreException.m -java_lang_AssertionError.m -java_lang_AutoCloseable.m -java_lang_Boolean.m -java_lang_Byte.m -java_lang_CharSequence.m -java_lang_Character.m -java_lang_Character_CharacterCache.m -java_lang_Class.m -java_lang_ClassCastException.m -java_lang_ClassNotFoundException.m -java_lang_Cloneable.m -java_lang_Comparable.m -java_lang_Double.m -java_lang_Enum.m -java_lang_Error.m -java_lang_Exception.m -java_lang_Float.m -java_lang_IllegalAccessException.m -java_lang_IllegalArgumentException.m -java_lang_IllegalStateException.m -java_lang_IncompatibleClassChangeError.m -java_lang_IndexOutOfBoundsException.m -java_lang_InstantiationException.m -java_lang_Integer.m -java_lang_Integer_IntegerCache.m -java_lang_InterruptedException.m -java_lang_Iterable.m -java_lang_LinkageError.m -java_lang_Long.m -java_lang_Long_LongCache.m -java_lang_Math.m -java_lang_NegativeArraySizeException.m -java_lang_NoSuchFieldError.m -java_lang_NullPointerException.m -java_lang_Number.m -java_lang_NumberFormatException.m -java_lang_Object.m -java_lang_OutOfMemoryError.m -java_lang_Record.m -java_lang_Runnable.m -java_lang_Runtime.m -java_lang_RuntimeException.m -java_lang_Short.m -java_lang_Short_ShortCache.m -java_lang_StackOverflowError.m -java_lang_StackTraceElement.m -java_lang_String.m -java_lang_StringBuffer.m -java_lang_StringBuilder.m -java_lang_StringFormatter.m -java_lang_StringFormatter_1.m -java_lang_StringFormatter_Decimal.m -java_lang_StringFormatter_Spec.m -java_lang_StringIndexOutOfBoundsException.m -java_lang_StringToReal.m -java_lang_StringToReal_1.m -java_lang_StringToReal_StringExponentPair.m -java_lang_String_1.m -java_lang_System.m -java_lang_System_1.m -java_lang_Thread.m -java_lang_ThreadLocal.m -java_lang_Throwable.m -java_lang_UnsupportedOperationException.m -java_lang_VirtualMachineError.m -java_lang_ref_Reference.m -java_lang_ref_WeakReference.m -java_lang_reflect_Array.m -java_lang_reflect_Type.m -java_net_URI.m -java_net_URIHelper.m -java_net_URISyntaxException.m -java_nio_charset_Charset.m -java_nio_charset_Charset_1.m -java_nio_charset_Charset_SimpleCharset.m -java_text_DateFormat.m -java_text_DateFormatSymbols.m -java_text_Format.m -java_text_ParseException.m -java_text_SimpleDateFormat.m -java_time_Clock.m -java_time_Clock_1.m -java_time_Clock_FixedClock.m -java_time_DateTimeException.m -java_time_DateTimeSupport.m -java_time_Duration.m -java_time_Instant.m -java_time_LocalDate.m -java_time_LocalDateTime.m -java_time_LocalTime.m -java_time_OffsetDateTime.m -java_time_Period.m -java_time_ZoneId.m -java_time_ZoneOffset.m -java_time_ZonedDateTime.m -java_time_format_DateTimeFormatter.m -java_time_format_DateTimeFormatter_ParsedPatternResult.m -java_time_format_DateTimeParseException.m -java_time_temporal_TemporalAccessor.m -java_util_AbstractCollection.m -java_util_AbstractList.m -java_util_AbstractList_1.m -java_util_AbstractList_FullListIterator.m -java_util_AbstractList_SimpleListIterator.m -java_util_AbstractList_SubAbstractList.m -java_util_AbstractList_SubAbstractListRandomAccess.m -java_util_AbstractList_SubAbstractList_SubAbstractListIterator.m -java_util_AbstractMap.m -java_util_AbstractMap_1.m -java_util_AbstractMap_1_1.m -java_util_AbstractMap_2.m -java_util_AbstractMap_2_1.m -java_util_AbstractMap_SimpleImmutableEntry.m -java_util_AbstractSequentialList.m -java_util_AbstractSet.m -java_util_ArrayList.m -java_util_Arrays.m -java_util_Arrays_ArrayList.m -java_util_Calendar.m -java_util_Collection.m -java_util_Collections.m -java_util_Collections_1.m -java_util_Collections_EmptyList.m -java_util_Collections_EmptyMap.m -java_util_Collections_EmptySet.m -java_util_Collections_EmptySet_1.m -java_util_Collections_ReverseComparator.m -java_util_Collections_SetFromMap.m -java_util_Collections_SynchronizedCollection.m -java_util_Collections_SynchronizedList.m -java_util_Collections_SynchronizedRandomAccessList.m -java_util_Collections_SynchronizedSet.m -java_util_Collections_UnmodifiableCollection.m -java_util_Collections_UnmodifiableCollection_1.m -java_util_Collections_UnmodifiableList.m -java_util_Collections_UnmodifiableList_1.m -java_util_Collections_UnmodifiableMap.m -java_util_Collections_UnmodifiableMap_UnmodifiableEntrySet.m -java_util_Collections_UnmodifiableMap_UnmodifiableEntrySet_1.m -java_util_Collections_UnmodifiableMap_UnmodifiableEntrySet_UnmodifiableMapEntry.m -java_util_Collections_UnmodifiableRandomAccessList.m -java_util_Collections_UnmodifiableSet.m -java_util_Comparator.m -java_util_ConcurrentModificationException.m -java_util_Date.m -java_util_Deque.m -java_util_Dictionary.m -java_util_DuplicateFormatFlagsException.m -java_util_Enumeration.m -java_util_FormatFlagsConversionMismatchException.m -java_util_GregorianCalendar.m -java_util_HashMap.m -java_util_HashMap_1.m -java_util_HashMap_2.m -java_util_HashMap_AbstractMapIterator.m -java_util_HashMap_CompactEntry.m -java_util_HashMap_CompactEntrySet.m -java_util_HashMap_EntryIterator.m -java_util_HashMap_KeyIterator.m -java_util_HashMap_ValueIterator.m -java_util_HashSet.m -java_util_Hashtable.m -java_util_Hashtable_1.m -java_util_Hashtable_2.m -java_util_Hashtable_3.m -java_util_Hashtable_4.m -java_util_Hashtable_4_1.m -java_util_Hashtable_5.m -java_util_Hashtable_6.m -java_util_Hashtable_6_1.m -java_util_Hashtable_7.m -java_util_Hashtable_7_1.m -java_util_Hashtable_Entry.m -java_util_Hashtable_HashEnumIterator.m -java_util_Hashtable_HashIterator.m -java_util_IdentityHashMap.m -java_util_IdentityHashMap_1.m -java_util_IdentityHashMap_1_1.m -java_util_IdentityHashMap_2.m -java_util_IdentityHashMap_2_1.m -java_util_IdentityHashMap_IdentityHashMapEntry.m -java_util_IdentityHashMap_IdentityHashMapEntrySet.m -java_util_IdentityHashMap_IdentityHashMapEntrySet_1.m -java_util_IdentityHashMap_IdentityHashMapIterator.m -java_util_IllegalFormatArgumentIndexException.m -java_util_IllegalFormatCodePointException.m -java_util_IllegalFormatConversionException.m -java_util_IllegalFormatException.m -java_util_IllegalFormatFlagsException.m -java_util_IllegalFormatPrecisionException.m -java_util_IllegalFormatWidthException.m -java_util_Iterator.m -java_util_LinkedHashMap.m -java_util_LinkedHashSet.m -java_util_LinkedList.m -java_util_LinkedList_Link.m -java_util_LinkedList_LinkIterator.m -java_util_List.m -java_util_ListIterator.m -java_util_Locale.m -java_util_Map.m -java_util_MapEntry.m -java_util_MapEntry_Type.m -java_util_Map_Entry.m -java_util_MissingFormatArgumentException.m -java_util_MissingFormatWidthException.m -java_util_NavigableMap.m -java_util_NavigableSet.m -java_util_NoSuchElementException.m -java_util_Observable.m -java_util_Observer.m -java_util_Queue.m -java_util_Random.m -java_util_RandomAccess.m -java_util_Set.m -java_util_SimpleTimeZone.m -java_util_SortedMap.m -java_util_SortedSet.m -java_util_StringTokenizer.m -java_util_TimeZone.m -java_util_TimeZone_1.m -java_util_TimeZone_2.m -java_util_Timer.m -java_util_TimerTask.m -java_util_Timer_T.m -java_util_TreeMap.m -java_util_TreeMap_1.m -java_util_TreeMap_2.m -java_util_TreeMap_3.m -java_util_TreeMap_AbstractMapIterator.m -java_util_TreeMap_AbstractSubMapIterator.m -java_util_TreeMap_AscendingSubMap.m -java_util_TreeMap_AscendingSubMapEntryIterator.m -java_util_TreeMap_AscendingSubMapEntrySet.m -java_util_TreeMap_AscendingSubMapIterator.m -java_util_TreeMap_AscendingSubMapKeyIterator.m -java_util_TreeMap_AscendingSubMapKeySet.m -java_util_TreeMap_BoundedEntryIterator.m -java_util_TreeMap_BoundedKeyIterator.m -java_util_TreeMap_BoundedMapIterator.m -java_util_TreeMap_BoundedValueIterator.m -java_util_TreeMap_Entry.m -java_util_TreeMap_NavigableSubMap.m -java_util_TreeMap_Node.m -java_util_TreeMap_SubMap.m -java_util_TreeMap_SubMapEntrySet.m -java_util_TreeMap_SubMapKeySet.m -java_util_TreeMap_SubMapValuesCollection.m -java_util_TreeMap_TreeMapEntry.m -java_util_TreeMap_UnboundedEntryIterator.m -java_util_TreeMap_UnboundedKeyIterator.m -java_util_TreeMap_UnboundedValueIterator.m -java_util_TreeSet.m -java_util_UnknownFormatConversionException.m -java_util_Vector.m -java_util_Vector_1.m -java_util_concurrent_atomic_AtomicBoolean.m -java_util_concurrent_atomic_AtomicInteger.m -java_util_concurrent_atomic_AtomicReference.m -java_util_function_BiConsumer.m -java_util_function_BiFunction.m -java_util_function_BinaryOperator.m -java_util_function_Consumer.m -java_util_function_Function.m -java_util_function_Predicate.m -java_util_function_Supplier.m -java_util_function_UnaryOperator.m -java_util_stream_BaseStream.m -java_util_stream_Collector.m -java_util_stream_Collectors.m -java_util_stream_Collectors_1.m -java_util_stream_Collectors_1_1.m -java_util_stream_Collectors_1_2.m -java_util_stream_Collectors_1_4.m -java_util_stream_Collectors_2.m -java_util_stream_Collectors_2_1.m -java_util_stream_Collectors_2_2.m -java_util_stream_Collectors_2_4.m -java_util_stream_Stream.m -java_util_stream_StreamImpl.m -kotlin_Unit.m -kotlin_jvm_internal_Intrinsics.m -nativeMethods.m -native_com_codenameone_examples_hellocodenameone_Base64NativeImplCodenameOne.m -native_com_codenameone_examples_hellocodenameone_InPlaceEditViewNativeImplCodenameOne.m -native_com_codenameone_examples_hellocodenameone_LocalNotificationNativeImplCodenameOne.m -native_com_codenameone_examples_hellocodenameone_StatusBarTapDiagnosticNativeImplCodenameOne.m -native_com_codenameone_examples_hellocodenameone_SurfacesRemoteViewsNativeImplCodenameOne.m -native_com_codenameone_examples_hellocodenameone_SwiftKotlinNativeImplCodenameOne.m diff --git a/scripts/native-warnings/parser-fixture.log b/scripts/native-warnings/parser-fixture.log index ac816fc9aaa..85f73561c1e 100644 --- a/scripts/native-warnings/parser-fixture.log +++ b/scripts/native-warnings/parser-fixture.log @@ -81,3 +81,17 @@ warning: unused variable 'currentOffset' [-Wunused-variable] # treated as truncation. It carries no [-Wflag], because clang flags belong to # file-scoped diagnostics -- that is what separates the two. warning: Skipping duplicate build file in Compile Sources build phase + +# 15. Split immediately BEFORE a space, so the continuation is indented. This is +# the shape that reddened CI: excluding every indented line as "probably a source +# snippet" also excluded this, and the diagnostic kept a truncated message with no +# flag. Distinguishing it from a real snippet is what the snippet/caret patterns +# are for; the join must still complete a flag. +/tmp/proj/HelloApp-src/com_codename1_ui_Button.m:77:9: warning: unused variable 'iterations' + [-Wunused-variable] + +# 16. A real snippet and caret pair following an UNFLAGGED diagnostic. Neither may +# be glued on, which is what separates 15 from noise. +/tmp/proj/HelloApp-src/cn1_globals.m:42:3: warning: implicit declaration of function 'cn1_absent' + 42 | cn1_absent(); + | ^