soul-browser/sources/java/kotlin/io/path/PathsKt__PathUtilsKt.java
KaKi87 550ddb0413
Decompile and recreate Soul Browser v1.4.85 with APK CI builds (#1)
* Decompile and recreate Soul Browser v1.4.85 with APK CI builds

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix CI build: include bundled google.jks and remove PR trigger

The apktool build failed in CI because app/unknown/.../google.jks was
excluded by the *.jks gitignore rule. Whitelist app-bundled JKS files
and commit the missing resource.

Also remove the redundant pull_request workflow trigger.

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Change package ID to com.github.kaki87.soulbrowser

Rename the application ID so the rebuilt APK can be installed
alongside the original Soul Browser from Google Play.

- Update AndroidManifest package, permissions, providers, and actions
- Update R class references in smali (com/github/kaki87/soulbrowser/R)
- Update shortcuts.xml targetPackage
- Rename app label to "Soul Rebuild" for easy identification

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix install compatibility: remove split APK metadata and bundle native libs

The rebuilt APK still declared requiredSplitTypes and Play Store split
metadata, causing Android to reject standalone installs as incompatible.

- Remove requiredSplitTypes and split-related manifest meta-data
- Merge native libs from all ABI splits with uncompressed storage
- Page-align before signing for extractNativeLibs=false
- Add .so to apktool doNotCompress list

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix install failure: use apksigner v2/v3 and bundle arm64 native libs

Target SDK 36 requires APK Signature Scheme v2+, but jarsigner only
produces v1 signatures, causing Android to reject the install.

- Sign with apksigner (v1+v2+v3) instead of jarsigner
- Add arm64-v8a native libraries from universal Soul Browser 1.4.79
- Set extractNativeLibs=true for reliable sideload installs
- Commit stable debug keystore for consistent signatures across builds

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Add committed debug keystore for consistent APK signatures

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix startup crash: use original classes2.dex desugar libraries

Apktool recompiles smali_classes2 into a broken classes2.dex, causing
ClassNotFoundException for j$.com.android.tools.r8.a at ML Kit init.

Inject the original classes2.dex (Java 8+ desugar libs) after apktool
build instead of using the recompiled version.

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix missing drawable resources from density split APKs

The base APK is an app bundle module; density-specific drawables like
seek_thumb_nor_b live in config.xhdpi.apk and were missing after rebuild,
causing Resources$NotFoundException at runtime.

- Merge non-9-patch resources from split APKs before apktool build
- Sync public.xml IDs from R smali only when backing files exist
- Add 713 density-specific resource IDs to public.xml

Co-authored-by: KaKi87 <KaKi87@pm.me>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-08-10 16:07:14 +02:00

943 lines
54 KiB
Java

package kotlin.io.path;
import com.google.android.gms.ads.RequestConfiguration;
import java.net.URI;
import java.nio.file.CopyOption;
import java.nio.file.DirectoryStream;
import java.nio.file.FileAlreadyExistsException;
import java.nio.file.FileStore;
import java.nio.file.FileVisitOption;
import java.nio.file.FileVisitor;
import java.nio.file.Files;
import java.nio.file.LinkOption;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import java.nio.file.attribute.BasicFileAttributes;
import java.nio.file.attribute.FileAttribute;
import java.nio.file.attribute.FileAttributeView;
import java.nio.file.attribute.FileTime;
import java.nio.file.attribute.PosixFilePermission;
import java.nio.file.attribute.UserPrincipal;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import kotlin.Deprecated;
import kotlin.DeprecationLevel;
import kotlin.KotlinNothingValueException;
import kotlin.Metadata;
import kotlin.PublishedApi;
import kotlin.ReplaceWith;
import kotlin.SinceKotlin;
import kotlin.Unit;
import kotlin.WasExperimental;
import kotlin.collections.CollectionsKt;
import kotlin.collections.SetsKt;
import kotlin.internal.InlineOnly;
import kotlin.io.CloseableKt;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.InlineMarker;
import kotlin.jvm.internal.Intrinsics;
import kotlin.jvm.internal.SourceDebugExtension;
import kotlin.sequences.Sequence;
import kotlin.text.StringsKt__StringsJVMKt;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@Metadata(d1 = {"\u0000Ì\u0001\n\u0000\n\u0002\u0010\u000e\n\u0002\u0018\u0002\n\u0002\b\u001c\n\u0002\u0010\u000b\n\u0000\n\u0002\u0010\u0011\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\f\n\u0002\u0010 \n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\b\u0002\n\u0002\u0010\t\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\u0005\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0000\n\u0002\b\u0007\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u0001\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010$\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\"\n\u0002\u0018\u0002\n\u0002\b\u0015\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\u001a\r\u0010\u0016\u001a\u00020\u0002*\u00020\u0002H\u0087\b\u001a\r\u0010\u0017\u001a\u00020\u0001*\u00020\u0002H\u0087\b\u001a\u0014\u0010\u0018\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0002H\u0007\u001a\u0014\u0010\u001a\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0002H\u0007\u001a\u0016\u0010\u001b\u001a\u0004\u0018\u00010\u0002*\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u0002H\u0007\u001a\u001f\u0010\u001c\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001d\u001a\u00020\u00022\b\b\u0002\u0010\u001e\u001a\u00020\u001fH\u0087\b\u001a.\u0010\u001c\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001d\u001a\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020\"0!\"\u00020\"H\u0087\\u0006\u0002\u0010#\u001a&\u0010$\u001a\u00020\u001f*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010&\u001a&\u0010'\u001a\u00020\u001f*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010&\u001a&\u0010(\u001a\u00020\u001f*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010&\u001a&\u0010)\u001a\u00020\u001f*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010&\u001a\r\u0010*\u001a\u00020\u001f*\u00020\u0002H\u0087\b\u001a\r\u0010+\u001a\u00020\u001f*\u00020\u0002H\u0087\b\u001a\r\u0010,\u001a\u00020\u001f*\u00020\u0002H\u0087\b\u001a\r\u0010-\u001a\u00020\u001f*\u00020\u0002H\u0087\b\u001a\r\u0010.\u001a\u00020\u001f*\u00020\u0002H\u0087\b\u001a\u0015\u0010/\u001a\u00020\u001f*\u00020\u00022\u0006\u00100\u001a\u00020\u0002H\u0087\b\u001a\u001c\u00101\u001a\b\u0012\u0004\u0012\u00020\u000202*\u00020\u00022\b\b\u0002\u00103\u001a\u00020\u0001H\u0007\u001a?\u00104\u001a\u0002H5\"\u0004\b\u0000\u00105*\u00020\u00022\b\b\u0002\u00103\u001a\u00020\u00012\u0018\u00106\u001a\u0014\u0012\n\u0012\b\u0012\u0004\u0012\u00020\u000208\u0012\u0004\u0012\u0002H507H\u0087\\u0001\u0000¢\u0006\u0002\u00109\u001a.\u0010:\u001a\u00020;*\u00020\u00022\b\b\u0002\u00103\u001a\u00020\u00012\u0012\u0010<\u001a\u000e\u0012\u0004\u0012\u00020\u0002\u0012\u0004\u0012\u00020;07H\u0087\\u0001\u0000\u001a\r\u0010=\u001a\u00020>*\u00020\u0002H\u0087\b\u001a\r\u0010?\u001a\u00020;*\u00020\u0002H\u0087\b\u001a\r\u0010@\u001a\u00020\u001f*\u00020\u0002H\u0087\b\u001a.\u0010A\u001a\u00020\u0002*\u00020\u00022\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0087\\u0006\u0002\u0010D\u001a.\u0010E\u001a\u00020\u0002*\u00020\u00022\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0087\\u0006\u0002\u0010D\u001a-\u0010F\u001a\u00020\u0002*\u00020\u00022\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0007¢\u0006\u0002\u0010D\u001a.\u0010G\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001d\u001a\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020\"0!\"\u00020\"H\u0087\\u0006\u0002\u0010#\u001a\u001f\u0010G\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001d\u001a\u00020\u00022\b\b\u0002\u0010\u001e\u001a\u00020\u001fH\u0087\b\u001a\r\u0010H\u001a\u00020I*\u00020\u0002H\u0087\b\u001a0\u0010J\u001a\u0004\u0018\u00010K*\u00020\u00022\u0006\u0010L\u001a\u00020\u00012\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010M\u001a8\u0010N\u001a\u00020\u0002*\u00020\u00022\u0006\u0010L\u001a\u00020\u00012\b\u0010O\u001a\u0004\u0018\u00010K2\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010P\u001a4\u0010Q\u001a\u0004\u0018\u0001HR\"\n\b\u0000\u0010R\u0018\u0001*\u00020S*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010T\u001a2\u0010U\u001a\u0002HR\"\n\b\u0000\u0010R\u0018\u0001*\u00020S*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010T\u001a\u001c\u0010V\u001a\u00020W2\u0006\u0010X\u001a\u00020\u00022\n\u0010Y\u001a\u0006\u0012\u0002\b\u00030ZH\u0001\u001a2\u0010[\u001a\u0002H\\\"\n\b\u0000\u0010\\\u0018\u0001*\u00020]*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010^\u001a<\u0010[\u001a\u0010\u0012\u0004\u0012\u00020\u0001\u0012\u0006\u0012\u0004\u0018\u00010K0_*\u00020\u00022\u0006\u0010B\u001a\u00020\u00012\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010`\u001a&\u0010a\u001a\u00020b*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010c\u001a\u0015\u0010d\u001a\u00020\u0002*\u00020\u00022\u0006\u0010O\u001a\u00020bH\u0087\b\u001a(\u0010e\u001a\u0004\u0018\u00010f*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010g\u001a\u0015\u0010h\u001a\u00020\u0002*\u00020\u00022\u0006\u0010O\u001a\u00020fH\u0087\b\u001a,\u0010i\u001a\b\u0012\u0004\u0012\u00020k0j*\u00020\u00022\u0012\u0010 \u001a\n\u0012\u0006\b\u0001\u0012\u00020%0!\"\u00020%H\u0087\\u0006\u0002\u0010l\u001a\u001b\u0010m\u001a\u00020\u0002*\u00020\u00022\f\u0010O\u001a\b\u0012\u0004\u0012\u00020k0jH\u0087\b\u001a\u0015\u0010n\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001d\u001a\u00020\u0002H\u0087\b\u001a6\u0010o\u001a\u00020\u0002*\u00020\u00022\u0006\u0010\u001d\u001a\u00020\u00022\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0087\\u0006\u0002\u0010p\u001a\r\u0010q\u001a\u00020\u0002*\u00020\u0002H\u0087\b\u001a.\u0010r\u001a\u00020\u0002*\u00020\u00022\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0087\\u0006\u0002\u0010D\u001aB\u0010s\u001a\u00020\u00022\n\b\u0002\u0010t\u001a\u0004\u0018\u00010\u00012\n\b\u0002\u0010u\u001a\u0004\u0018\u00010\u00012\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0087\\u0006\u0002\u0010v\u001aK\u0010s\u001a\u00020\u00022\b\u0010w\u001a\u0004\u0018\u00010\u00022\n\b\u0002\u0010t\u001a\u0004\u0018\u00010\u00012\n\b\u0002\u0010u\u001a\u0004\u0018\u00010\u00012\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0007¢\u0006\u0002\u0010x\u001a6\u0010y\u001a\u00020\u00022\n\b\u0002\u0010t\u001a\u0004\u0018\u00010\u00012\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0087\\u0006\u0002\u0010z\u001a?\u0010y\u001a\u00020\u00022\b\u0010w\u001a\u0004\u0018\u00010\u00022\n\b\u0002\u0010t\u001a\u0004\u0018\u00010\u00012\u001a\u0010B\u001a\u000e\u0012\n\b\u0001\u0012\u0006\u0012\u0002\b\u00030C0!\"\u0006\u0012\u0002\b\u00030CH\u0007¢\u0006\u0002\u0010{\u001a\u0015\u0010|\u001a\u00020\u0002*\u00020\u00022\u0006\u00100\u001a\u00020\u0002H\u0087\n\u001a\u0015\u0010|\u001a\u00020\u0002*\u00020\u00022\u0006\u00100\u001a\u00020\u0001H\u0087\n\u001a\u0011\u0010}\u001a\u00020\u00022\u0006\u0010X\u001a\u00020\u0001H\u0087\b\u001a*\u0010}\u001a\u00020\u00022\u0006\u0010\u0019\u001a\u00020\u00012\u0012\u0010~\u001a\n\u0012\u0006\b\u0001\u0012\u00020\u00010!\"\u00020\u0001H\u0087\\u0006\u0002\u0010\u007f\u001a\u000f\u0010\u0080\u0001\u001a\u00020\u0002*\u00030\u0081\u0001H\u0087\b\u001a/\u0010\u0082\u0001\u001a\b\u0012\u0004\u0012\u00020\u000208*\u00020\u00022\u0014\u0010 \u001a\u000b\u0012\u0007\b\u0001\u0012\u00030\u0083\u00010!\"\u00030\u0083\u0001H\u0007¢\u0006\u0003\u0010\u0084\u0001\u001a4\u0010\u0085\u0001\u001a\u00020;*\u00020\u00022\u000e\u0010\u0086\u0001\u001a\t\u0012\u0004\u0012\u00020\u00020\u0087\u00012\n\b\u0002\u0010\u0088\u0001\u001a\u00030\u0089\u00012\t\b\u0002\u0010\u008a\u0001\u001a\u00020\u001fH\u0007\u001aM\u0010\u0085\u0001\u001a\u00020;*\u00020\u00022\n\b\u0002\u0010\u0088\u0001\u001a\u00030\u0089\u00012\t\b\u0002\u0010\u008a\u0001\u001a\u00020\u001f2\u001a\u0010\u008b\u0001\u001a\u0015\u0012\u0005\u0012\u00030\u008c\u0001\u0012\u0004\u0012\u00020;07¢\u0006\u0003\b\u008d\u0001H\u0007\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0003 \u0001\u001a9\u0010\u008e\u0001\u001a\t\u0012\u0004\u0012\u00020\u00020\u0087\u00012\u001a\u0010\u008b\u0001\u001a\u0015\u0012\u0005\u0012\u00030\u008c\u0001\u0012\u0004\u0012\u00020;07¢\u0006\u0003\b\u008d\u0001H\u0007\u0082\u0002\n\n\b\b\u0001\u0012\u0002\u0010\u0001 \u0001\"\u001e\u0010\u0000\u001a\u00020\u0001*\u00020\u00028FX\u0087\u0004¢\u0006\f\u0012\u0004\b\u0003\u0010\u0004\u001a\u0004\b\u0005\u0010\u0006\"\u001e\u0010\u0007\u001a\u00020\u0001*\u00020\u00028FX\u0087\u0004¢\u0006\f\u0012\u0004\b\b\u0010\u0004\u001a\u0004\b\t\u0010\u0006\"\u001e\u0010\n\u001a\u00020\u0001*\u00020\u00028FX\u0087\u0004¢\u0006\f\u0012\u0004\b\u000b\u0010\u0004\u001a\u0004\b\f\u0010\u0006\"\u001f\u0010\r\u001a\u00020\u0001*\u00020\u00028Æ\u0002X\u0087\u0004¢\u0006\f\u0012\u0004\b\u000e\u0010\u0004\u001a\u0004\b\u000f\u0010\u0006\"\u001e\u0010\u0010\u001a\u00020\u0001*\u00020\u00028FX\u0087\u0004¢\u0006\f\u0012\u0004\b\u0011\u0010\u0004\u001a\u0004\b\u0012\u0010\u0006\"\u001f\u0010\u0013\u001a\u00020\u0001*\u00020\u00028Æ\u0002X\u0087\u0004¢\u0006\f\u0012\u0004\b\u0014\u0010\u0004\u001a\u0004\b\u0015\u0010\u0006\u0082\u0002\u0007\n\u0005\b\u009920\u0001¨\u0006\u008f\u0001"}, d2 = {"name", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "Ljava/nio/file/Path;", "getName$annotations", "(Ljava/nio/file/Path;)V", "getName", "(Ljava/nio/file/Path;)Ljava/lang/String;", "nameWithoutExtension", "getNameWithoutExtension$annotations", "getNameWithoutExtension", "extension", "getExtension$annotations", "getExtension", "pathString", "getPathString$annotations", "getPathString", "invariantSeparatorsPathString", "getInvariantSeparatorsPathString$annotations", "getInvariantSeparatorsPathString", "invariantSeparatorsPath", "getInvariantSeparatorsPath$annotations", "getInvariantSeparatorsPath", "absolute", "absolutePathString", "relativeTo", "base", "relativeToOrSelf", "relativeToOrNull", "copyTo", "target", "overwrite", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "options", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "Ljava/nio/file/CopyOption;", "(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;", "exists", "Ljava/nio/file/LinkOption;", "(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z", "notExists", "isRegularFile", "isDirectory", "isSymbolicLink", "isExecutable", "isHidden", "isReadable", "isWritable", "isSameFileAs", "other", "listDirectoryEntries", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "glob", "useDirectoryEntries", RequestConfiguration.MAX_AD_CONTENT_RATING_T, "block", "Lkotlin/Function1;", "Lkotlin/sequences/Sequence;", "(Ljava/nio/file/Path;Ljava/lang/String;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;", "forEachDirectoryEntry", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "action", "fileSize", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "deleteExisting", "deleteIfExists", "createDirectory", "attributes", "Ljava/nio/file/attribute/FileAttribute;", "(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;", "createDirectories", "createParentDirectories", "moveTo", "fileStore", "Ljava/nio/file/FileStore;", "getAttribute", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "attribute", "(Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/lang/Object;", "setAttribute", "value", "(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/Object;[Ljava/nio/file/LinkOption;)Ljava/nio/file/Path;", "fileAttributesViewOrNull", "V", "Ljava/nio/file/attribute/FileAttributeView;", "(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileAttributeView;", "fileAttributesView", "fileAttributeViewNotAvailable", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "path", "attributeViewClass", "Ljava/lang/Class;", "readAttributes", "A", "Ljava/nio/file/attribute/BasicFileAttributes;", "(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/BasicFileAttributes;", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "(Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/util/Map;", "getLastModifiedTime", "Ljava/nio/file/attribute/FileTime;", "(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileTime;", "setLastModifiedTime", "getOwner", "Ljava/nio/file/attribute/UserPrincipal;", "(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/UserPrincipal;", "setOwner", "getPosixFilePermissions", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "Ljava/nio/file/attribute/PosixFilePermission;", "(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/util/Set;", "setPosixFilePermissions", "createLinkPointingTo", "createSymbolicLinkPointingTo", "(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;", "readSymbolicLink", "createFile", "createTempFile", "prefix", "suffix", "(Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;", "directory", "(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;", "createTempDirectory", "(Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;", "(Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;", "div", "Path", "subpaths", "(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;", "toPath", "Ljava/net/URI;", "walk", "Lkotlin/io/path/PathWalkOption;", "(Ljava/nio/file/Path;[Lkotlin/io/path/PathWalkOption;)Lkotlin/sequences/Sequence;", "visitFileTree", "visitor", "Ljava/nio/file/FileVisitor;", "maxDepth", RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED, "followLinks", "builderAction", "Lkotlin/io/path/FileVisitorBuilder;", "Lkotlin/ExtensionFunctionType;", "fileVisitor", "kotlin-stdlib-jdk7"}, k = 5, mv = {2, 2, 0}, xi = 49, xs = "kotlin/io/path/PathsKt")
@SourceDebugExtension({"SMAP\nPathUtils.kt\nKotlin\n*S Kotlin\n*F\n+ 1 PathUtils.kt\nkotlin/io/path/PathsKt__PathUtilsKt\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n+ 3 _Collections.kt\nkotlin/collections/CollectionsKt___CollectionsKt\n*L\n1#1,1195:1\n1#2:1196\n1869#3,2:1197\n*S KotlinDebug\n*F\n+ 1 PathUtils.kt\nkotlin/io/path/PathsKt__PathUtilsKt\n*L\n415#1:1197,2\n*E\n"})
/* loaded from: classes4.dex */
public class PathsKt__PathUtilsKt extends PathsKt__PathRecursiveFunctionsKt {
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path Path(String path) {
Intrinsics.checkNotNullParameter(path, "path");
Path path2 = Paths.get(path, new String[0]);
Intrinsics.checkNotNullExpressionValue(path2, "get(...)");
return path2;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path absolute(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
Path absolutePath = path.toAbsolutePath();
Intrinsics.checkNotNullExpressionValue(absolutePath, "toAbsolutePath(...)");
return absolutePath;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final String absolutePathString(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return path.toAbsolutePath().toString();
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path copyTo(Path path, Path target, boolean z) {
CopyOption[] copyOptionArr;
StandardCopyOption standardCopyOption;
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
if (z) {
standardCopyOption = StandardCopyOption.REPLACE_EXISTING;
copyOptionArr = new CopyOption[]{standardCopyOption};
} else {
copyOptionArr = new CopyOption[0];
}
Path copy = Files.copy(path, target, (CopyOption[]) Arrays.copyOf(copyOptionArr, copyOptionArr.length));
Intrinsics.checkNotNullExpressionValue(copy, "copy(...)");
return copy;
}
public static /* synthetic */ Path copyTo$default(Path path, Path target, boolean z, int i, Object obj) {
CopyOption[] copyOptionArr;
StandardCopyOption standardCopyOption;
if ((i & 2) != 0) {
z = false;
}
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
if (z) {
standardCopyOption = StandardCopyOption.REPLACE_EXISTING;
copyOptionArr = new CopyOption[]{standardCopyOption};
} else {
copyOptionArr = new CopyOption[0];
}
Path copy = Files.copy(path, target, (CopyOption[]) Arrays.copyOf(copyOptionArr, copyOptionArr.length));
Intrinsics.checkNotNullExpressionValue(copy, "copy(...)");
return copy;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createDirectories(Path path, FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createDirectories = Files.createDirectories(path, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createDirectories, "createDirectories(...)");
return createDirectories;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createDirectory(Path path, FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createDirectory = Files.createDirectory(path, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createDirectory, "createDirectory(...)");
return createDirectory;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createFile(Path path, FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createFile = Files.createFile(path, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createFile, "createFile(...)");
return createFile;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createLinkPointingTo(Path path, Path target) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
Path createLink = Files.createLink(path, target);
Intrinsics.checkNotNullExpressionValue(createLink, "createLink(...)");
return createLink;
}
@SinceKotlin(version = "1.9")
@NotNull
public static final Path createParentDirectories(@NotNull Path path, @NotNull FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path parent = path.getParent();
if (parent != null && !Files.isDirectory(parent, (LinkOption[]) Arrays.copyOf(new LinkOption[0], 0))) {
try {
FileAttribute[] fileAttributeArr = (FileAttribute[]) Arrays.copyOf(attributes, attributes.length);
Intrinsics.checkNotNullExpressionValue(Files.createDirectories(parent, (FileAttribute[]) Arrays.copyOf(fileAttributeArr, fileAttributeArr.length)), "createDirectories(...)");
return path;
} catch (FileAlreadyExistsException e) {
if (!Files.isDirectory(parent, (LinkOption[]) Arrays.copyOf(new LinkOption[0], 0))) {
throw e;
}
}
}
return path;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createSymbolicLinkPointingTo(Path path, Path target, FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createSymbolicLink = Files.createSymbolicLink(path, target, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createSymbolicLink, "createSymbolicLink(...)");
return createSymbolicLink;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createTempDirectory(String str, FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createTempDirectory = Files.createTempDirectory(str, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempDirectory, "createTempDirectory(...)");
return createTempDirectory;
}
public static /* synthetic */ Path createTempDirectory$default(String str, FileAttribute[] attributes, int i, Object obj) {
if ((i & 1) != 0) {
str = null;
}
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createTempDirectory = Files.createTempDirectory(str, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempDirectory, "createTempDirectory(...)");
return createTempDirectory;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path createTempFile(String str, String str2, FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createTempFile = Files.createTempFile(str, str2, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempFile, "createTempFile(...)");
return createTempFile;
}
public static /* synthetic */ Path createTempFile$default(String str, String str2, FileAttribute[] attributes, int i, Object obj) {
if ((i & 1) != 0) {
str = null;
}
if ((i & 2) != 0) {
str2 = null;
}
Intrinsics.checkNotNullParameter(attributes, "attributes");
Path createTempFile = Files.createTempFile(str, str2, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempFile, "createTempFile(...)");
return createTempFile;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final void deleteExisting(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
Files.delete(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean deleteIfExists(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.deleteIfExists(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path div(Path path, Path other) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(other, "other");
Path resolve = path.resolve(other);
Intrinsics.checkNotNullExpressionValue(resolve, "resolve(...)");
return resolve;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean exists(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
return Files.exists(path, (LinkOption[]) Arrays.copyOf(options, options.length));
}
@PublishedApi
@NotNull
public static final Void fileAttributeViewNotAvailable(@NotNull Path path, @NotNull Class<?> attributeViewClass) {
Intrinsics.checkNotNullParameter(path, "path");
Intrinsics.checkNotNullParameter(attributeViewClass, "attributeViewClass");
throw new UnsupportedOperationException("The desired attribute view type " + attributeViewClass + " is not available for the file " + path + '.');
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final /* synthetic */ <V extends FileAttributeView> V fileAttributesView(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
Intrinsics.reifiedOperationMarker(4, "V");
V v = (V) Files.getFileAttributeView(path, f.b(), (LinkOption[]) Arrays.copyOf(options, options.length));
if (v != null) {
return v;
}
Intrinsics.reifiedOperationMarker(4, "V");
fileAttributeViewNotAvailable(path, f.b());
throw new KotlinNothingValueException();
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final /* synthetic */ <V extends FileAttributeView> V fileAttributesViewOrNull(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
Intrinsics.reifiedOperationMarker(4, "V");
return (V) Files.getFileAttributeView(path, f.b(), (LinkOption[]) Arrays.copyOf(options, options.length));
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final long fileSize(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.size(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final FileStore fileStore(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
FileStore fileStore = Files.getFileStore(path);
Intrinsics.checkNotNullExpressionValue(fileStore, "getFileStore(...)");
return fileStore;
}
@SinceKotlin(version = "2.1")
@WasExperimental(markerClass = {ExperimentalPathApi.class})
@NotNull
public static final FileVisitor<Path> fileVisitor(@NotNull Function1<? super FileVisitorBuilder, Unit> builderAction) {
Intrinsics.checkNotNullParameter(builderAction, "builderAction");
FileVisitorBuilderImpl fileVisitorBuilderImpl = new FileVisitorBuilderImpl();
builderAction.invoke(fileVisitorBuilderImpl);
return fileVisitorBuilderImpl.build();
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final void forEachDirectoryEntry(Path path, String glob, Function1<? super Path, Unit> action) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(glob, "glob");
Intrinsics.checkNotNullParameter(action, "action");
DirectoryStream<Path> newDirectoryStream = Files.newDirectoryStream(path, glob);
try {
Intrinsics.checkNotNull(newDirectoryStream);
Iterator<Path> it = newDirectoryStream.iterator();
while (it.hasNext()) {
action.invoke(it.next());
}
Unit unit = Unit.INSTANCE;
InlineMarker.finallyStart(1);
CloseableKt.closeFinally(newDirectoryStream, null);
InlineMarker.finallyEnd(1);
} finally {
}
}
public static /* synthetic */ void forEachDirectoryEntry$default(Path path, String glob, Function1 action, int i, Object obj) {
if ((i & 1) != 0) {
glob = "*";
}
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(glob, "glob");
Intrinsics.checkNotNullParameter(action, "action");
DirectoryStream<Path> newDirectoryStream = Files.newDirectoryStream(path, glob);
try {
Intrinsics.checkNotNull(newDirectoryStream);
Iterator<Path> it = newDirectoryStream.iterator();
while (it.hasNext()) {
action.invoke(it.next());
}
Unit unit = Unit.INSTANCE;
InlineMarker.finallyStart(1);
CloseableKt.closeFinally(newDirectoryStream, null);
InlineMarker.finallyEnd(1);
} finally {
}
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Object getAttribute(Path path, String attribute, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attribute, "attribute");
Intrinsics.checkNotNullParameter(options, "options");
return Files.getAttribute(path, attribute, (LinkOption[]) Arrays.copyOf(options, options.length));
}
/* JADX WARN: Code restructure failed: missing block: B:5:0x0011, code lost:
r1 = kotlin.text.StringsKt__StringsKt.substringAfterLast(r1, '.', com.google.android.gms.ads.RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED);
*/
@org.jetbrains.annotations.NotNull
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public static final java.lang.String getExtension(@org.jetbrains.annotations.NotNull java.nio.file.Path r1) {
/*
java.lang.String r0 = "<this>"
kotlin.jvm.internal.Intrinsics.checkNotNullParameter(r1, r0)
java.nio.file.Path r1 = r1.getFileName()
if (r1 == 0) goto L19
java.lang.String r1 = r1.toString()
if (r1 == 0) goto L19
java.lang.String r1 = kotlin.text.StringsKt.N(r1)
if (r1 != 0) goto L18
goto L19
L18:
return r1
L19:
java.lang.String r1 = ""
return r1
*/
throw new UnsupportedOperationException("Method not decompiled: kotlin.io.path.PathsKt__PathUtilsKt.getExtension(java.nio.file.Path):java.lang.String");
}
@SinceKotlin(version = "1.5")
public static /* synthetic */ void getExtension$annotations(Path path) {
}
private static final String getInvariantSeparatorsPath(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return getInvariantSeparatorsPathString(path);
}
@SinceKotlin(version = "1.4")
@InlineOnly
@Deprecated(level = DeprecationLevel.ERROR, message = "Use invariantSeparatorsPathString property instead.", replaceWith = @ReplaceWith(expression = "invariantSeparatorsPathString", imports = {}))
@ExperimentalPathApi
public static /* synthetic */ void getInvariantSeparatorsPath$annotations(Path path) {
}
@NotNull
public static final String getInvariantSeparatorsPathString(@NotNull Path path) {
String replace$default;
Intrinsics.checkNotNullParameter(path, "<this>");
String separator = path.getFileSystem().getSeparator();
boolean areEqual = Intrinsics.areEqual(separator, "/");
String obj = path.toString();
if (!areEqual) {
Intrinsics.checkNotNull(separator);
replace$default = StringsKt__StringsJVMKt.replace$default(obj, separator, "/", false, 4, (Object) null);
return replace$default;
}
return obj;
}
@SinceKotlin(version = "1.5")
public static /* synthetic */ void getInvariantSeparatorsPathString$annotations(Path path) {
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final FileTime getLastModifiedTime(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
FileTime lastModifiedTime = Files.getLastModifiedTime(path, (LinkOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(lastModifiedTime, "getLastModifiedTime(...)");
return lastModifiedTime;
}
@NotNull
public static final String getName(@NotNull Path path) {
String str;
Intrinsics.checkNotNullParameter(path, "<this>");
Path fileName = path.getFileName();
if (fileName != null) {
str = fileName.toString();
} else {
str = null;
}
if (str == null) {
return RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED;
}
return str;
}
@SinceKotlin(version = "1.5")
public static /* synthetic */ void getName$annotations(Path path) {
}
/* JADX WARN: Code restructure failed: missing block: B:5:0x0011, code lost:
r1 = kotlin.text.StringsKt__StringsKt.substringBeforeLast$default(r1, ".", (java.lang.String) null, 2, (java.lang.Object) null);
*/
@org.jetbrains.annotations.NotNull
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public static final java.lang.String getNameWithoutExtension(@org.jetbrains.annotations.NotNull java.nio.file.Path r1) {
/*
java.lang.String r0 = "<this>"
kotlin.jvm.internal.Intrinsics.checkNotNullParameter(r1, r0)
java.nio.file.Path r1 = r1.getFileName()
if (r1 == 0) goto L19
java.lang.String r1 = r1.toString()
if (r1 == 0) goto L19
java.lang.String r1 = kotlin.text.StringsKt.O(r1)
if (r1 != 0) goto L18
goto L19
L18:
return r1
L19:
java.lang.String r1 = ""
return r1
*/
throw new UnsupportedOperationException("Method not decompiled: kotlin.io.path.PathsKt__PathUtilsKt.getNameWithoutExtension(java.nio.file.Path):java.lang.String");
}
@SinceKotlin(version = "1.5")
public static /* synthetic */ void getNameWithoutExtension$annotations(Path path) {
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final UserPrincipal getOwner(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
return Files.getOwner(path, (LinkOption[]) Arrays.copyOf(options, options.length));
}
private static final String getPathString(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return path.toString();
}
@SinceKotlin(version = "1.5")
@InlineOnly
public static /* synthetic */ void getPathString$annotations(Path path) {
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Set<PosixFilePermission> getPosixFilePermissions(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
Set<PosixFilePermission> posixFilePermissions = Files.getPosixFilePermissions(path, (LinkOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(posixFilePermissions, "getPosixFilePermissions(...)");
return posixFilePermissions;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isDirectory(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
return Files.isDirectory(path, (LinkOption[]) Arrays.copyOf(options, options.length));
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isExecutable(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.isExecutable(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isHidden(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.isHidden(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isReadable(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.isReadable(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isRegularFile(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
return Files.isRegularFile(path, (LinkOption[]) Arrays.copyOf(options, options.length));
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isSameFileAs(Path path, Path other) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(other, "other");
return Files.isSameFile(path, other);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isSymbolicLink(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.isSymbolicLink(path);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean isWritable(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
return Files.isWritable(path);
}
@SinceKotlin(version = "1.5")
@NotNull
public static final List<Path> listDirectoryEntries(@NotNull Path path, @NotNull String glob) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(glob, "glob");
DirectoryStream<Path> newDirectoryStream = Files.newDirectoryStream(path, glob);
try {
Intrinsics.checkNotNull(newDirectoryStream);
List<Path> list = CollectionsKt.toList(newDirectoryStream);
CloseableKt.closeFinally(newDirectoryStream, null);
return list;
} finally {
}
}
public static /* synthetic */ List listDirectoryEntries$default(Path path, String str, int i, Object obj) {
if ((i & 1) != 0) {
str = "*";
}
return listDirectoryEntries(path, str);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path moveTo(Path path, Path target, CopyOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
Intrinsics.checkNotNullParameter(options, "options");
Path move = Files.move(path, target, (CopyOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(move, "move(...)");
return move;
}
public static /* synthetic */ Path moveTo$default(Path path, Path target, boolean z, int i, Object obj) {
CopyOption[] copyOptionArr;
StandardCopyOption standardCopyOption;
if ((i & 2) != 0) {
z = false;
}
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
if (z) {
standardCopyOption = StandardCopyOption.REPLACE_EXISTING;
copyOptionArr = new CopyOption[]{standardCopyOption};
} else {
copyOptionArr = new CopyOption[0];
}
Path move = Files.move(path, target, (CopyOption[]) Arrays.copyOf(copyOptionArr, copyOptionArr.length));
Intrinsics.checkNotNullExpressionValue(move, "move(...)");
return move;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final boolean notExists(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
return Files.notExists(path, (LinkOption[]) Arrays.copyOf(options, options.length));
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final /* synthetic */ <A extends BasicFileAttributes> A readAttributes(Path path, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
Intrinsics.reifiedOperationMarker(4, "A");
A a2 = (A) Files.readAttributes(path, com.google.common.net.a.a(), (LinkOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(a2, "readAttributes(...)");
return a2;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path readSymbolicLink(Path path) {
Intrinsics.checkNotNullParameter(path, "<this>");
Path readSymbolicLink = Files.readSymbolicLink(path);
Intrinsics.checkNotNullExpressionValue(readSymbolicLink, "readSymbolicLink(...)");
return readSymbolicLink;
}
@SinceKotlin(version = "1.5")
@NotNull
public static final Path relativeTo(@NotNull Path path, @NotNull Path base) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(base, "base");
try {
return PathRelativizer.INSTANCE.tryRelativeTo(path, base);
} catch (IllegalArgumentException e) {
throw new IllegalArgumentException(e.getMessage() + "\nthis path: " + path + "\nbase path: " + base, e);
}
}
@SinceKotlin(version = "1.5")
@Nullable
public static final Path relativeToOrNull(@NotNull Path path, @NotNull Path base) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(base, "base");
try {
return PathRelativizer.INSTANCE.tryRelativeTo(path, base);
} catch (IllegalArgumentException unused) {
return null;
}
}
@SinceKotlin(version = "1.5")
@NotNull
public static final Path relativeToOrSelf(@NotNull Path path, @NotNull Path base) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(base, "base");
Path relativeToOrNull = relativeToOrNull(path, base);
if (relativeToOrNull == null) {
return path;
}
return relativeToOrNull;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path setAttribute(Path path, String attribute, Object obj, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attribute, "attribute");
Intrinsics.checkNotNullParameter(options, "options");
Path attribute2 = Files.setAttribute(path, attribute, obj, (LinkOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(attribute2, "setAttribute(...)");
return attribute2;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path setLastModifiedTime(Path path, FileTime value) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(value, "value");
Path lastModifiedTime = Files.setLastModifiedTime(path, value);
Intrinsics.checkNotNullExpressionValue(lastModifiedTime, "setLastModifiedTime(...)");
return lastModifiedTime;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path setOwner(Path path, UserPrincipal value) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(value, "value");
Path owner = Files.setOwner(path, value);
Intrinsics.checkNotNullExpressionValue(owner, "setOwner(...)");
return owner;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path setPosixFilePermissions(Path path, Set<? extends PosixFilePermission> value) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(value, "value");
Path posixFilePermissions = Files.setPosixFilePermissions(path, value);
Intrinsics.checkNotNullExpressionValue(posixFilePermissions, "setPosixFilePermissions(...)");
return posixFilePermissions;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path toPath(URI uri) {
Intrinsics.checkNotNullParameter(uri, "<this>");
Path path = Paths.get(uri);
Intrinsics.checkNotNullExpressionValue(path, "get(...)");
return path;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final <T> T useDirectoryEntries(Path path, String glob, Function1<? super Sequence<? extends Path>, ? extends T> block) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(glob, "glob");
Intrinsics.checkNotNullParameter(block, "block");
DirectoryStream<Path> newDirectoryStream = Files.newDirectoryStream(path, glob);
try {
Intrinsics.checkNotNull(newDirectoryStream);
T invoke = block.invoke(CollectionsKt.asSequence(newDirectoryStream));
InlineMarker.finallyStart(1);
CloseableKt.closeFinally(newDirectoryStream, null);
InlineMarker.finallyEnd(1);
return invoke;
} finally {
}
}
public static /* synthetic */ Object useDirectoryEntries$default(Path path, String glob, Function1 block, int i, Object obj) {
if ((i & 1) != 0) {
glob = "*";
}
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(glob, "glob");
Intrinsics.checkNotNullParameter(block, "block");
DirectoryStream<Path> newDirectoryStream = Files.newDirectoryStream(path, glob);
try {
Intrinsics.checkNotNull(newDirectoryStream);
Object invoke = block.invoke(CollectionsKt.asSequence(newDirectoryStream));
InlineMarker.finallyStart(1);
CloseableKt.closeFinally(newDirectoryStream, null);
InlineMarker.finallyEnd(1);
return invoke;
} finally {
}
}
@SinceKotlin(version = "2.1")
@WasExperimental(markerClass = {ExperimentalPathApi.class})
public static final void visitFileTree(@NotNull Path path, @NotNull FileVisitor<Path> visitor, int i, boolean z) {
Set emptySet;
FileVisitOption fileVisitOption;
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(visitor, "visitor");
if (z) {
fileVisitOption = FileVisitOption.FOLLOW_LINKS;
emptySet = SetsKt.setOf(fileVisitOption);
} else {
emptySet = SetsKt.emptySet();
}
Files.walkFileTree(path, emptySet, i, visitor);
}
public static /* synthetic */ void visitFileTree$default(Path path, FileVisitor fileVisitor, int i, boolean z, int i2, Object obj) {
if ((i2 & 2) != 0) {
i = Integer.MAX_VALUE;
}
if ((i2 & 4) != 0) {
z = false;
}
visitFileTree(path, (FileVisitor<Path>) fileVisitor, i, z);
}
@SinceKotlin(version = "2.1")
@WasExperimental(markerClass = {ExperimentalPathApi.class})
@NotNull
public static final Sequence<Path> walk(@NotNull Path path, @NotNull PathWalkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(options, "options");
return new PathTreeWalk(path, options);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path Path(String base, String... subpaths) {
Intrinsics.checkNotNullParameter(base, "base");
Intrinsics.checkNotNullParameter(subpaths, "subpaths");
Path path = Paths.get(base, (String[]) Arrays.copyOf(subpaths, subpaths.length));
Intrinsics.checkNotNullExpressionValue(path, "get(...)");
return path;
}
@SinceKotlin(version = "1.5")
@NotNull
public static final Path createTempDirectory(@Nullable Path path, @Nullable String str, @NotNull FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(attributes, "attributes");
if (path != null) {
Path createTempDirectory = Files.createTempDirectory(path, str, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempDirectory, "createTempDirectory(...)");
return createTempDirectory;
}
Path createTempDirectory2 = Files.createTempDirectory(str, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempDirectory2, "createTempDirectory(...)");
return createTempDirectory2;
}
@SinceKotlin(version = "1.5")
@NotNull
public static final Path createTempFile(@Nullable Path path, @Nullable String str, @Nullable String str2, @NotNull FileAttribute<?>... attributes) {
Intrinsics.checkNotNullParameter(attributes, "attributes");
if (path != null) {
Path createTempFile = Files.createTempFile(path, str, str2, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempFile, "createTempFile(...)");
return createTempFile;
}
Path createTempFile2 = Files.createTempFile(str, str2, (FileAttribute[]) Arrays.copyOf(attributes, attributes.length));
Intrinsics.checkNotNullExpressionValue(createTempFile2, "createTempFile(...)");
return createTempFile2;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path div(Path path, String other) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(other, "other");
Path resolve = path.resolve(other);
Intrinsics.checkNotNullExpressionValue(resolve, "resolve(...)");
return resolve;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path moveTo(Path path, Path target, boolean z) {
CopyOption[] copyOptionArr;
StandardCopyOption standardCopyOption;
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
if (z) {
standardCopyOption = StandardCopyOption.REPLACE_EXISTING;
copyOptionArr = new CopyOption[]{standardCopyOption};
} else {
copyOptionArr = new CopyOption[0];
}
Path move = Files.move(path, target, (CopyOption[]) Arrays.copyOf(copyOptionArr, copyOptionArr.length));
Intrinsics.checkNotNullExpressionValue(move, "move(...)");
return move;
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Map<String, Object> readAttributes(Path path, String attributes, LinkOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(attributes, "attributes");
Intrinsics.checkNotNullParameter(options, "options");
Map<String, Object> readAttributes = Files.readAttributes(path, attributes, (LinkOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(readAttributes, "readAttributes(...)");
return readAttributes;
}
public static /* synthetic */ void visitFileTree$default(Path path, int i, boolean z, Function1 function1, int i2, Object obj) {
if ((i2 & 1) != 0) {
i = Integer.MAX_VALUE;
}
if ((i2 & 2) != 0) {
z = false;
}
visitFileTree(path, i, z, (Function1<? super FileVisitorBuilder, Unit>) function1);
}
@SinceKotlin(version = "1.5")
@InlineOnly
private static final Path copyTo(Path path, Path target, CopyOption... options) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(target, "target");
Intrinsics.checkNotNullParameter(options, "options");
Path copy = Files.copy(path, target, (CopyOption[]) Arrays.copyOf(options, options.length));
Intrinsics.checkNotNullExpressionValue(copy, "copy(...)");
return copy;
}
public static /* synthetic */ Path createTempDirectory$default(Path path, String str, FileAttribute[] fileAttributeArr, int i, Object obj) {
if ((i & 2) != 0) {
str = null;
}
return createTempDirectory(path, str, fileAttributeArr);
}
public static /* synthetic */ Path createTempFile$default(Path path, String str, String str2, FileAttribute[] fileAttributeArr, int i, Object obj) {
if ((i & 2) != 0) {
str = null;
}
if ((i & 4) != 0) {
str2 = null;
}
return createTempFile(path, str, str2, fileAttributeArr);
}
@SinceKotlin(version = "2.1")
@WasExperimental(markerClass = {ExperimentalPathApi.class})
public static final void visitFileTree(@NotNull Path path, int i, boolean z, @NotNull Function1<? super FileVisitorBuilder, Unit> builderAction) {
Intrinsics.checkNotNullParameter(path, "<this>");
Intrinsics.checkNotNullParameter(builderAction, "builderAction");
visitFileTree(path, fileVisitor(builderAction), i, z);
}
}