code: def add_directive(self,
                        key: Optional[str],
                        value: str,
                        lineno: Optional[int] = None,
                        comment: str = '') -> None:
          '''Assignments are items with ':' type '''
          if key is None:
              # continuation of multi-line directive
              self.statements[-1][2] += value
              self.values.append(value)
              if self._action is not None:
                  self._action_options += value
          else:
              # new directive, the comment before it are used
              self.statements.append([':', key, value, comment])
              self.values = [value]
          if lineno:
              self.lineno = linenf add_directive(self,
                        key: Optional[str],
                        value: str,
                        lineno: Optional[int] = None,
                        comment: str = '') -> None:
          '''Assignments are items with ':' type '''
          if key is None:
              # continuation of multi-line directive
              self.statements[-1][2] += value
              self.values.append(value)
              if self._action is not None:
                  self._action_options += value
          else:
              # new directive, the comment before it are used
              self.statements.append([':', key, value, comment])
              self.values = [value]
          if lineno:
              self.lineno = lineno
docs: Assignments are items with ':' type