1*b2fa4294SXin Li# buildifier: disable=module-docstring 2*b2fa4294SXin Lidef my_rule_impl(ctx): 3*b2fa4294SXin Li _ignore = [ctx] # @unused 4*b2fa4294SXin Li return [] 5*b2fa4294SXin Li 6*b2fa4294SXin Li# buildifier: disable=unsorted-dict-items 7*b2fa4294SXin Limy_rule = rule( 8*b2fa4294SXin Li implementation = my_rule_impl, 9*b2fa4294SXin Li doc = "This is my rule. It does stuff.", 10*b2fa4294SXin Li attrs = { 11*b2fa4294SXin Li "first": attr.label( 12*b2fa4294SXin Li mandatory = True, 13*b2fa4294SXin Li doc = "first doc string", 14*b2fa4294SXin Li allow_single_file = True, 15*b2fa4294SXin Li ), 16*b2fa4294SXin Li "second": attr.string_dict(mandatory = True), 17*b2fa4294SXin Li "third": attr.output(mandatory = True), 18*b2fa4294SXin Li "fourth": attr.bool(default = False, doc = "fourth doc string", mandatory = False), 19*b2fa4294SXin Li "_hidden": attr.string(), 20*b2fa4294SXin Li }, 21*b2fa4294SXin Li) 22