c_src: update
[nit.git] / c_src / stream._nitni.c
1 #include "stream._nitni.h"
2 #include "stream_nit.h"
3 /* out/indirect function for stream::FDStream::native_close */
4 val_t FDStream_native_close___out( val_t recv, val_t i )
5 {
6 FDStream recv___nitni;
7 bigint i___nitni;
8 bigint return___nitni;
9 val_t return___nit;
10 recv___nitni = malloc( sizeof( struct s_FDStream ) );
11 recv___nitni->ref.val = NIT_NULL;
12 recv___nitni->ref.count = 0;
13 nitni_local_ref_add( (struct nitni_ref *)recv___nitni );
14 recv___nitni->ref.val = recv;
15 i___nitni = UNTAG_Int(i);
16 return___nitni = stream_FDStream_FDStream_native_close_1( recv___nitni, i___nitni );
17 return___nit = TAG_Int(return___nitni);
18 nitni_local_ref_clean( );
19 return return___nit;
20 }
21 /* out/indirect function for stream::FDStream::native_read_char */
22 val_t FDStream_native_read_char___out( val_t recv, val_t i )
23 {
24 FDStream recv___nitni;
25 bigint i___nitni;
26 bigint return___nitni;
27 val_t return___nit;
28 recv___nitni = malloc( sizeof( struct s_FDStream ) );
29 recv___nitni->ref.val = NIT_NULL;
30 recv___nitni->ref.count = 0;
31 nitni_local_ref_add( (struct nitni_ref *)recv___nitni );
32 recv___nitni->ref.val = recv;
33 i___nitni = UNTAG_Int(i);
34 return___nitni = stream_FDStream_FDStream_native_read_char_1( recv___nitni, i___nitni );
35 return___nit = TAG_Int(return___nitni);
36 nitni_local_ref_clean( );
37 return return___nit;
38 }
39 /* out/indirect function for stream::FDStream::native_read */
40 val_t FDStream_native_read___out( val_t recv, val_t i, val_t buf, val_t len )
41 {
42 FDStream recv___nitni;
43 bigint i___nitni;
44 char * buf___nitni;
45 bigint len___nitni;
46 bigint return___nitni;
47 val_t return___nit;
48 recv___nitni = malloc( sizeof( struct s_FDStream ) );
49 recv___nitni->ref.val = NIT_NULL;
50 recv___nitni->ref.count = 0;
51 nitni_local_ref_add( (struct nitni_ref *)recv___nitni );
52 recv___nitni->ref.val = recv;
53 i___nitni = UNTAG_Int(i);
54 buf___nitni = UNBOX_NativeString(buf);
55 len___nitni = UNTAG_Int(len);
56 return___nitni = stream_FDStream_FDStream_native_read_3( recv___nitni, i___nitni, buf___nitni, len___nitni );
57 return___nit = TAG_Int(return___nitni);
58 nitni_local_ref_clean( );
59 return return___nit;
60 }
61 /* out/indirect function for stream::FDStream::native_write */
62 val_t FDStream_native_write___out( val_t recv, val_t i, val_t buf, val_t len )
63 {
64 FDStream recv___nitni;
65 bigint i___nitni;
66 char * buf___nitni;
67 bigint len___nitni;
68 bigint return___nitni;
69 val_t return___nit;
70 recv___nitni = malloc( sizeof( struct s_FDStream ) );
71 recv___nitni->ref.val = NIT_NULL;
72 recv___nitni->ref.count = 0;
73 nitni_local_ref_add( (struct nitni_ref *)recv___nitni );
74 recv___nitni->ref.val = recv;
75 i___nitni = UNTAG_Int(i);
76 buf___nitni = UNBOX_NativeString(buf);
77 len___nitni = UNTAG_Int(len);
78 return___nitni = stream_FDStream_FDStream_native_write_3( recv___nitni, i___nitni, buf___nitni, len___nitni );
79 return___nit = TAG_Int(return___nitni);
80 nitni_local_ref_clean( );
81 return return___nit;
82 }
83 /* out/indirect function for stream::Object::intern_poll */
84 val_t Object_intern_poll___out( val_t recv, val_t in_fds, val_t out_fds )
85 {
86 Object recv___nitni;
87 Array in_fds___nitni;
88 Array out_fds___nitni;
89 nullable_Int return___nitni;
90 val_t return___nit;
91 recv___nitni = malloc( sizeof( struct s_Object ) );
92 recv___nitni->ref.val = NIT_NULL;
93 recv___nitni->ref.count = 0;
94 nitni_local_ref_add( (struct nitni_ref *)recv___nitni );
95 recv___nitni->ref.val = recv;
96 in_fds___nitni = malloc( sizeof( struct s_Array ) );
97 in_fds___nitni->ref.val = NIT_NULL;
98 in_fds___nitni->ref.count = 0;
99 nitni_local_ref_add( (struct nitni_ref *)in_fds___nitni );
100 in_fds___nitni->ref.val = in_fds;
101 out_fds___nitni = malloc( sizeof( struct s_Array ) );
102 out_fds___nitni->ref.val = NIT_NULL;
103 out_fds___nitni->ref.count = 0;
104 nitni_local_ref_add( (struct nitni_ref *)out_fds___nitni );
105 out_fds___nitni->ref.val = out_fds;
106 return___nitni = malloc( sizeof( struct s_nullable_Int ) );
107 return___nitni->ref.val = NIT_NULL;
108 return___nitni->ref.count = 0;
109 return___nitni = Object_intern_poll___impl( recv___nitni, in_fds___nitni, out_fds___nitni );
110 return___nit = return___nitni->ref.val;
111 nitni_local_ref_clean( );
112 return return___nit;
113 }
114 nullable_Int stream_null_Int()
115 {
116 nullable_Int n;
117 n = malloc( sizeof( struct s_nullable_Int ) );
118 n->ref.val = NIT_NULL;
119 n->ref.count = 0;
120 nitni_local_ref_add( (struct nitni_ref *)n );
121 return n;
122 }
123 nullable_Object stream_null_Object()
124 {
125 nullable_Object n;
126 n = malloc( sizeof( struct s_nullable_Object ) );
127 n->ref.val = NIT_NULL;
128 n->ref.count = 0;
129 nitni_local_ref_add( (struct nitni_ref *)n );
130 return n;
131 }
132 /* friendly for array::AbstractArrayRead::(abstract_collection::Collection::length) */
133 bigint stream_Array_length( Array recv )
134 {
135 val_t recv___nit;
136 bigint result___nitni;
137 val_t result___nit;
138 recv___nit = recv->ref.val;
139 result___nit = CALL_standard___collection___abstract_collection___Collection___length( recv___nit )( recv___nit );
140 result___nitni = UNTAG_Int(result___nit);
141 return result___nitni;
142 }
143 /* friendly for array::Array::(abstract_collection::SequenceRead::[]) */
144 nullable_Object stream_Array__index( Array recv, bigint index )
145 {
146 val_t recv___nit;
147 val_t index___nit;
148 nullable_Object result___nitni;
149 val_t result___nit;
150 recv___nit = recv->ref.val;
151 index___nit = TAG_Int(index);
152 result___nitni = malloc( sizeof( struct s_nullable_Object ) );
153 result___nitni->ref.val = NIT_NULL;
154 result___nitni->ref.count = 0;
155 nitni_local_ref_add( (struct nitni_ref *)result___nitni );
156 result___nit = CALL_standard___collection___abstract_collection___SequenceRead_____bra( recv___nit )( recv___nit, index___nit );
157 result___nitni->ref.val = result___nit;
158 return result___nitni;
159 }
160 int stream_nullable_Object_is_a_Int( nullable_Object value )
161 {
162 val_t temp;
163 temp = value->ref.val;
164 if ( ISNULL(temp) ) return 0;
165 if ( ! ( ISOBJ( temp ) ? OBJISA( temp, standard___kernel___Int ): VALISA( temp, standard___kernel___Int ) ) ) return 0;
166 return 1;
167 }
168 bigint stream_nullable_Object_as_Int( nullable_Object value )
169 {
170 val_t temp;
171 bigint out;
172 temp = value->ref.val;
173 if ( ISNULL(temp) ){ fprintf( stderr, "Casting from nullable Object to Int failed because value is null." );
174 abort();
175 }if ( ! ( ISOBJ( temp ) ? OBJISA( temp, standard___kernel___Int ): VALISA( temp, standard___kernel___Int ) ) ){
176 fprintf( stderr, "Casting to Int failed because value is not a Int." );
177 abort();
178 }
179 out = UNTAG_Int(temp);
180 return out;
181 }
182 nullable_Int stream_Int_as_nullable( bigint value )
183 {
184 val_t temp;
185 nullable_Int out;
186 out = malloc( sizeof( struct s_nullable_Int ) );
187 out->ref.val = NIT_NULL;
188 out->ref.count = 0;
189 nitni_local_ref_add( (struct nitni_ref *)out );
190 temp = TAG_Int(value);
191 out->ref.val = temp;
192 return out;
193 }