util/{Const,Writable}Buffer: add typedef reference_type

This commit is contained in:
Max Kellermann 2014-04-24 09:47:59 +02:00
parent cfbee59152
commit 3b8a9dd6ec
2 changed files with 8 additions and 4 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2013 Max Kellermann <max@duempel.org> * Copyright (C) 2013-2014 Max Kellermann <max@duempel.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions * modification, are permitted provided that the following conditions
@ -86,6 +86,8 @@ struct ConstBuffer<void> {
template<typename T> template<typename T>
struct ConstBuffer { struct ConstBuffer {
typedef size_t size_type; typedef size_t size_type;
typedef const T &reference_type;
typedef reference_type const_reference_type;
typedef const T *pointer_type; typedef const T *pointer_type;
typedef pointer_type const_pointer_type; typedef pointer_type const_pointer_type;
typedef pointer_type iterator; typedef pointer_type iterator;
@ -155,7 +157,7 @@ struct ConstBuffer {
#ifdef NDEBUG #ifdef NDEBUG
constexpr constexpr
#endif #endif
const T &operator[](size_type i) const { reference_type operator[](size_type i) const {
#ifndef NDEBUG #ifndef NDEBUG
assert(i < size); assert(i < size);
#endif #endif

View File

@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2013 Max Kellermann <max@duempel.org> * Copyright (C) 2013-2014 Max Kellermann <max@duempel.org>
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions * modification, are permitted provided that the following conditions
@ -80,6 +80,8 @@ struct WritableBuffer<void> {
template<typename T> template<typename T>
struct WritableBuffer { struct WritableBuffer {
typedef size_t size_type; typedef size_t size_type;
typedef T &reference_type;
typedef const T &const_reference_type;
typedef T *pointer_type; typedef T *pointer_type;
typedef const T *const_pointer_type; typedef const T *const_pointer_type;
typedef pointer_type iterator; typedef pointer_type iterator;
@ -149,7 +151,7 @@ struct WritableBuffer {
#ifdef NDEBUG #ifdef NDEBUG
constexpr constexpr
#endif #endif
T &operator[](size_type i) const { reference_type operator[](size_type i) const {
#ifndef NDEBUG #ifndef NDEBUG
assert(i < size); assert(i < size);
#endif #endif