def run()

in commands/FBDisplayCommands.py [0:0]


    def run(self, args, options):
        def setBorder(layer, width, color, colorClass):
            fb.evaluateEffect("[%s setBorderWidth:(CGFloat)%s]" % (layer, width))
            fb.evaluateEffect(
                "[%s setBorderColor:(CGColorRef)[(id)[%s %sColor] CGColor]]"
                % (layer, colorClass, color)
            )

        obj = fb.evaluateInputExpression(args[0])
        depth = int(options.depth)
        isMac = runtimeHelpers.isMacintoshArch()
        color = options.color
        assert color in self.colors, "Color must be one of the following: {}".format(
            " ".join(self.colors)
        )
        colorClassName = "UIColor"
        if isMac:
            colorClassName = "NSColor"

        if viewHelpers.isView(obj):
            prevLevel = 0
            for view, level in viewHelpers.subviewsOfView(obj):
                if level > depth:
                    break
                if prevLevel != level:
                    color = self.nextColorAfterColor(color)
                    prevLevel = level
                layer = viewHelpers.convertToLayer(view)
                setBorder(layer, options.width, color, colorClassName)
        else:
            # `obj` is not a view, make sure recursive bordering is not requested
            assert (
                depth <= 0
            ), "Recursive bordering is only supported for UIViews or NSViews"
            layer = viewHelpers.convertToLayer(obj)
            setBorder(layer, options.width, color, colorClassName)

        lldb.debugger.HandleCommand("caflush")