ChildInfo (@NotNull VirtualFile parentFile, int parentId, @NotNull CharSequence name, @NotNull Pair<@NotNull FileAttributes, String> childData, @NotNull NewVirtualFileSystem fs, @NotNull ChildInfo @Nullable [] children) { FileAttributes attributes = childData.first; int childId = vfsPeer.createRecord(); int nameId = writeAttributesToRecord(childId, parentId, name, parentFile.isCaseSensitive(), attributes, true); if (nameId < 0) { throw new AssertionError("writeAttributesToRecord(" + childId + ", " + parentId + ", '" + name + "',...) returns -1"); } if (attributes.isDirectory()) { FSRecords.loadDirectoryData(childId, parentFile, name, fs); } return new ChildInfoImpl(childId, nameId, attributes, children, childData.second); }