# RulesWidget

class `praw.models.``RulesWidget`(reddit, _data)

  Class to represent a rules widget.

      widgets = reddit.subreddit('redditdev').widgets
      rules_widget = None
      for widget in widgets.sidebar:
          if isinstance(widget, praw.models.RulesWidget):
              rules_widget = widget
              break
      from pprint import pprint; pprint(rules_widget.data)

  Update one (requires proper moderator permissions):

      new_styles = {'backgroundColor': '#FFFFFF', 'headerColor': '#FF9900'}
      rules_widget.mod.update(display='compact', shortName='The LAWS',
                              styles=new_styles)

  Typical Attributes

  This table describes attributes that typically belong to objects of this class. Since attributes are dynamically provided (see Determine Available Attributes of an Object), there is not a guarantee that these attributes will always be present, nor is this list comprehensive in any way.

  Attribute | Description
  --- | ---
  `data` | A list of the subreddit rules. Can be iterated over by iterating over the `RulesWidget` (e.g. `for rule in rules_widget`).
  `display` | The display style of the widget, either `'full'` or `'compact'`.
  `id` | The widget ID.
  `kind` | The widget kind (always `'subreddit-rules'`).
  `shortName` | The short name of the widget.
  `styles` | A `dict` with the keys `'backgroundColor'` and `'headerColor'`.
  `subreddit` | The `Subreddit` the button widget belongs to.

  `__contains__`(item)

    Test if item exists in the list.

  `__getitem__`(index)

    Return the item at position index in the list.

  `__init__`(reddit, _data)

    Initialize the rules widget.

  `__iter__`()

    Return an iterator to the list.

  `__len__`()

    Return the number of items in the list.

  `mod`

    Get an instance of `WidgetModeration` for this widget.

    Note

    Using any of the methods of `WidgetModeration` will likely make outdated the data in the `SubredditWidgets` that this widget belongs to. To remedy this, call `refresh()`.

  classmethod `parse`(data, reddit)

    Return an instance of `cls` from `data`.

    Parameters:

    - data – The structured data.
    - reddit – An instance of `Reddit`.