#define LLVM_ADT_SMALLVECTOR_H
#include <algorithm>
-#include <cassert>
#include <iterator>
#include <memory>
const_iterator end() const { return End; }
reference operator[](unsigned idx) {
- assert(idx < size() && "out of range reference!");
return Begin[idx];
}
const_reference operator[](unsigned idx) const {
- assert(idx < size() && "out of range reference!");
return Begin[idx];
}
reference back() {
- assert(!empty() && "SmallVector is empty!");
return end()[-1];
}
const_reference back() const {
- assert(!empty() && "SmallVector is empty!");
return end()[-1];
}
}
void pop_back() {
- assert(!empty() && "SmallVector is empty!");
--End;
End->~T();
}