@@ -0,0 +1,2265 @@
+/*%0A * Copyright (c) Meta Platforms, Inc. and affiliates.%0A *%0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *     http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0A%0Apackage com.facebook.litho;%0A%0Aimport static com.facebook.rendercore.RenderUnit.Extension.extension;%0A%0Aimport android.content.Context;%0Aimport androidx.annotation.Nullable;%0Aimport com.facebook.infer.annotation.Nullsafe;%0Aimport java.util.List;%0A%0A@Nullsafe(Nullsafe.Mode.LOCAL)%0Apublic class MountableLithoRenderUnit extends LithoRenderUnit %7B%0A%0A  private final Mountable%3C?%3E mMountable;%0A%0A  private MountableLithoRenderUnit(%0A      long id, LayoutOutput output, Mountable mountable, @Nullable ComponentContext context) %7B%0A    super(id, output, mountable.getRenderType(), context);%0A    this.mMountable = mountable;%0A%0A    addMountUnmountExtentions(mMountable);%0A  %7D%0A%0A  private void addMountUnmountExtentions(Mountable mountable) %7B%0A    List%3CBinder%3E binders = mountable.getBinders();%0A    if (binders != null) %7B%0A      for (Binder binder : binders) %7B%0A        addMountUnmountExtensions(extension(mMountable, binder));%0A      %7D%0A    %7D%0A  %7D%0A%0A  public static MountableLithoRenderUnit create(%0A      final long id,%0A      final Component component,%0A      final @Nullable ComponentContext context,%0A      final @Nullable NodeInfo nodeInfo,%0A      final @Nullable ViewNodeInfo viewNodeInfo,%0A      final int flags,%0A      final int importantForAccessibility,%0A      final @LayoutOutput.UpdateState int updateState,%0A      final Mountable mountable) %7B%0A    final LayoutOutput output =%0A        new LayoutOutput(%0A            component, nodeInfo, viewNodeInfo, flags, importantForAccessibility, updateState);%0A%0A    return new MountableLithoRenderUnit(id, output, mountable, context);%0A  %7D%0A%0A  @Override%0A  public Object createContent(Context c) %7B%0A    return mMountable.createContent(c);%0A  %7D%0A%7D%0A

Add MountableLithoRenderUnit [2/n]