Add list-style item as an argument to the given parser.

        Generally speaking, this works mostly like the normal append
        action, but there are special rules for boolean cases. See the
        AppendReplace action for more details.

        Examples:
            A non-nested list value with the name 'values' and a child name of
            'value' will result in a command-line argument that will correctly
            handle arguments like the following:

            ['--value', 'VALUE1', '--value', 'VALUE2']

        Args:
            parser (argparse.ArgumentParser): The parser to add this item to.
            bootstrap (bool): Flag to indicate whether you only want to mark
                this item as required or not.

def add_argument(self, parser, bootstrap=False):
        """Add list-style item as an argument to the given parser.

        Generally speaking, this works mostly like the normal append
        action, but there are special rules for boolean cases. See the
        AppendReplace action for more details.

        Examples:
            A non-nested list value with the name 'values' and a child name of
            'value' will result in a command-line argument that will correctly
            handle arguments like the following:

            ['--value', 'VALUE1', '--value', 'VALUE2']

        Args:
            parser (argparse.ArgumentParser): The parser to add this item to.
            bootstrap (bool): Flag to indicate whether you only want to mark
                this item as required or not.
        """
        if self.cli_expose:
            if isinstance(self.child, YapconfBoolItem):
                original_default = self.child.default

                self.child.default = True
                args = self.child._get_argparse_names(parser.prefix_chars)
                kwargs = self._get_argparse_kwargs(bootstrap)
                parser.add_argument(*args, **kwargs)

                self.child.default = False
                args = self.child._get_argparse_names(parser.prefix_chars)
                kwargs = self._get_argparse_kwargs(bootstrap)
                parser.add_argument(*args, **kwargs)

                self.child.default = original_default
            else:
                super(YapconfListItem, self).add_argument(parser, bootstrap)