@Nullable
	default WorkspaceResource resolveBundleContainer(@Nonnull Bundle<?> bundle) {
		// Check for containment in this resource
		if (bundleStream().anyMatch(b -> b == bundle)) return this;

		// Check for containment in any embedded resource
		for (WorkspaceFileResource embedded : getEmbeddedResources().values()) {
			WorkspaceResource resource = embedded.resolveBundleContainer(bundle);
			if (resource != null) return resource;
		}
		return null;
	}
Searches within this resource and all embedded resources for containment of the given bundle.
To reconstruct the path to the root from the returned result here use {@link #getContainingResource()}.

@param bundle
		Bundle that belongs to this resource, or a {@link #getEmbeddedResources() embedded resource}.

@return The containing resource.
<ul>
    <li>Can be the current resource.</li>
    <li>Can be any level of nested embedded resource.</li>
    <li>Can be {@code null} if no embedded resource contains the given bundle.</li>
</ul>
recaf-core/src/main/java/software/coley/recaf/workspace/model/resource/WorkspaceResource.java