summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2018-06-04 16:53:17 +1000
committerDamien George <damien.p.george@gmail.com>2018-06-04 16:53:17 +1000
commit1427f8f593062a9f428d40e8d3536c6a97adc479 (patch)
tree7c09d354b3ecab14afcfe28251703ec4550403d0
parent309fe39dbb14b1f715ea09c4b9de235a099c01b0 (diff)
py/stream: Move definition of mp_stream_p_t from obj.h to stream.h.
Since a long time now, mp_obj_type_t no longer refers explicitly to mp_stream_p_t but rather to an abstract "const void *protocol". So there's no longer any need to define mp_stream_p_t in obj.h and it can go with all its associated definitions in stream.h. Pretty much all users of this type will already include the stream header.
-rw-r--r--py/obj.h10
-rw-r--r--py/stream.h10
2 files changed, 10 insertions, 10 deletions
diff --git a/py/obj.h b/py/obj.h
index 95a94836e..8e4083920 100644
--- a/py/obj.h
+++ b/py/obj.h
@@ -451,16 +451,6 @@ typedef struct _mp_buffer_p_t {
bool mp_get_buffer(mp_obj_t obj, mp_buffer_info_t *bufinfo, mp_uint_t flags);
void mp_get_buffer_raise(mp_obj_t obj, mp_buffer_info_t *bufinfo, mp_uint_t flags);
-// Stream protocol
-typedef struct _mp_stream_p_t {
- // On error, functions should return MP_STREAM_ERROR and fill in *errcode (values
- // are implementation-dependent, but will be exposed to user, e.g. via exception).
- mp_uint_t (*read)(mp_obj_t obj, void *buf, mp_uint_t size, int *errcode);
- mp_uint_t (*write)(mp_obj_t obj, const void *buf, mp_uint_t size, int *errcode);
- mp_uint_t (*ioctl)(mp_obj_t obj, mp_uint_t request, uintptr_t arg, int *errcode);
- mp_uint_t is_text : 1; // default is bytes, set this for text stream
-} mp_stream_p_t;
-
struct _mp_obj_type_t {
// A type is an object so must start with this entry, which points to mp_type_type.
mp_obj_base_t base;
diff --git a/py/stream.h b/py/stream.h
index a1d1c4f8a..3dec49a2e 100644
--- a/py/stream.h
+++ b/py/stream.h
@@ -62,6 +62,16 @@ struct mp_stream_seek_t {
#define MP_SEEK_CUR (1)
#define MP_SEEK_END (2)
+// Stream protocol
+typedef struct _mp_stream_p_t {
+ // On error, functions should return MP_STREAM_ERROR and fill in *errcode (values
+ // are implementation-dependent, but will be exposed to user, e.g. via exception).
+ mp_uint_t (*read)(mp_obj_t obj, void *buf, mp_uint_t size, int *errcode);
+ mp_uint_t (*write)(mp_obj_t obj, const void *buf, mp_uint_t size, int *errcode);
+ mp_uint_t (*ioctl)(mp_obj_t obj, mp_uint_t request, uintptr_t arg, int *errcode);
+ mp_uint_t is_text : 1; // default is bytes, set this for text stream
+} mp_stream_p_t;
+
MP_DECLARE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_read_obj);
MP_DECLARE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_read1_obj);
MP_DECLARE_CONST_FUN_OBJ_VAR_BETWEEN(mp_stream_readinto_obj);