| Home | Libraries | People | FAQ | More

## Class template deque

boost::interprocess::deque

## Synopsis

    template<typename T, typename Alloc>
    class deque {
    public:
      // types
      typedef Base::iterator                          iterator;
      typedef Base::const_iterator                    const_iterator;
      typedef std::reverse_iterator< const_iterator > const_reverse_iterator;
      typedef std::reverse_iterator< iterator >       reverse_iterator;

      // construct/copy/destruct
      deque(const allocator_type & = allocator_type());
      deque(const deque &);
      deque(unspecified);
      deque(size_type, const value_type &,
            const allocator_type & = allocator_type());
      deque(size_type);
      template<typename InpIt>
        deque(InpIt, InpIt, const allocator_type & = allocator_type());
      deque& operator=(const deque &);
      deque& operator=(unspecified);
      ~deque();

      // public member functions
      allocator_type get_allocator() const;
      iterator begin() ;
      iterator end() ;
      const_iterator begin() const;
      const_iterator end() const;
      reverse_iterator rbegin() ;
      reverse_iterator rend() ;
      const_reverse_iterator rbegin() const;
      const_reverse_iterator rend() const;
      reference operator[](size_type) ;
      const_reference operator[](size_type) const;
      void priv_range_check(size_type) const;
      reference at(size_type) ;
      const_reference at(size_type) const;
      reference front() ;
      reference back() ;
      const_reference front() const;
      const_reference back() const;
      size_type size() const;
      size_type max_size() const;
      bool empty() const;
      void swap(deque &) ;
      void swap(unspecified) ;
      void assign(size_type, const T &) ;
      template<typename InpIt> void assign(InpIt, InpIt) ;
      void push_back(const value_type &) ;
      void push_back(unspecified) ;
      void push_front(const value_type &) ;
      void push_front(unspecified) ;
      void pop_back() ;
      void pop_front() ;
      iterator insert(iterator, const value_type &) ;
      iterator insert(iterator, unspecified) ;
      void insert(iterator, size_type, const value_type &) ;
      template<typename InpIt> void insert(iterator, InpIt, InpIt) ;
      void resize(size_type, const value_type &) ;
      void resize(size_type) ;
      iterator erase(iterator) ;
      iterator erase(iterator, iterator) ;
      void clear() ;
    };

## Description

Deque class

### `deque` public construct/copy/destruct

1.     deque(const allocator_type & a = allocator_type());

2.     deque(const deque & x);

3.     deque(unspecified mx);

4.     deque(size_type n, const value_type & value,
             const allocator_type & a = allocator_type());

5.     deque(size_type n);

6.     template<typename InpIt>
         deque(InpIt first, InpIt last, const allocator_type & a = allocator_type());

7.     deque& operator=(const deque & x);

8.     deque& operator=(unspecified mx);

9.     ~deque();

### `deque` public member functions

1.     allocator_type get_allocator() const;

2.     iterator begin() ;

3.     iterator end() ;

4.     const_iterator begin() const;

5.     const_iterator end() const;

6.     reverse_iterator rbegin() ;

7.     reverse_iterator rend() ;

8.     const_reverse_iterator rbegin() const;

9.     const_reverse_iterator rend() const;

10.     reference operator[](size_type n) ;

11.     const_reference operator[](size_type n) const;

12.     void priv_range_check(size_type n) const;

13.     reference at(size_type n) ;

14.     const_reference at(size_type n) const;

15.     reference front() ;

16.     reference back() ;

17.     const_reference front() const;

18.     const_reference back() const;

19.     size_type size() const;

20.     size_type max_size() const;

21.     bool empty() const;

22.     void swap(deque & x) ;

23.     void swap(unspecified mx) ;

24.     void assign(size_type n, const T & val) ;

25.     template<typename InpIt> void assign(InpIt first, InpIt last) ;

26.     void push_back(const value_type & t) ;

27.     void push_back(unspecified mt) ;

28.     void push_front(const value_type & t) ;

29.     void push_front(unspecified mt) ;

30.     void pop_back() ;

31.     void pop_front() ;

32.     iterator insert(iterator position, const value_type & x) ;

33.     iterator insert(iterator position, unspecified mx) ;

34.     void insert(iterator pos, size_type n, const value_type & x) ;

35.     template<typename InpIt> void insert(iterator pos, InpIt first, InpIt last) ;

36.     void resize(size_type new_size, const value_type & x) ;

37.     void resize(size_type new_size) ;

38.     iterator erase(iterator pos) ;

39.     iterator erase(iterator first, iterator last) ;

40.     void clear() ;