INNER CODE UNIT · Python

merge

gokayfem/ComfyUI-fal-API · nodes/builder_node.py:705

    def merge(self, a: str, b: str) -> tuple[str]:
        parsed_a = self._parse("a", a)
        parsed_b = self._parse("b", b)
        if parsed_a is None and parsed_b is None:
            raise FalApiError("FalJSONMerge", "Both 'a' and 'b' are empty; nothing to merge")
        if parsed_a is None or parsed_b is None:
            return (json.dumps(parsed_b if parsed_a is None else parsed_a),)
        if isinstance(parsed_a, list) and isinstance(parsed_b, list):
            return (json.dumps([*parsed_a, *parsed_b]),)
        if isinstance(parsed_a, dict) and isinstance(parsed_b, dict):
            return (json.dumps({**parsed_a, **parsed_b}),)
        raise FalApiError(
            "FalJSONMerge",
            "'a' and 'b' must both be arrays or both be objects "
            f"(got {type(parsed_a).__name__} and {type(parsed_b).__name__})",
        )

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…