@@ -224,116 +224,110 @@ public TF_DataType ToTFDataType(Type type)
224224 }
225225 }
226226
227- public Tensor this [ Slice slice ]
227+ public Tensor slice ( Slice slice )
228228 {
229- get
230- {
231- var slice_spec = new int [ ] { slice . Start . Value } ;
232- var begin = new List < int > ( ) ;
233- var end = new List < int > ( ) ;
234- var strides = new List < int > ( ) ;
229+ var slice_spec = new int [ ] { slice . Start . Value } ;
230+ var begin = new List < int > ( ) ;
231+ var end = new List < int > ( ) ;
232+ var strides = new List < int > ( ) ;
235233
236- var index = 0 ;
237- var ( new_axis_mask , shrink_axis_mask ) = ( 0 , 0 ) ;
238- var ( begin_mask , end_mask ) = ( 0 , 0 ) ;
239- var ellipsis_mask = 0 ;
234+ var index = 0 ;
235+ var ( new_axis_mask , shrink_axis_mask ) = ( 0 , 0 ) ;
236+ var ( begin_mask , end_mask ) = ( 0 , 0 ) ;
237+ var ellipsis_mask = 0 ;
240238
241- foreach ( var s in slice_spec )
239+ foreach ( var s in slice_spec )
240+ {
241+ begin . Add ( s ) ;
242+ if ( slice . Stop . HasValue )
242243 {
243- begin . Add ( s ) ;
244- if ( slice . Stop . HasValue )
245- {
246- end . Add ( slice . Stop . Value ) ;
247- }
248- else
249- {
250- end . Add ( 0 ) ;
251- end_mask |= ( 1 << index ) ;
252- }
253- strides . Add ( slice . Step ) ;
254-
255- index += 1 ;
244+ end . Add ( slice . Stop . Value ) ;
256245 }
257-
258- return with ( ops . name_scope ( null , "strided_slice" , new { begin , end , strides } ) , scope =>
246+ else
259247 {
260- string name = scope ;
261- if ( begin != null )
262- {
263- var ( packed_begin , packed_end , packed_strides ) =
264- ( array_ops . stack ( begin . ToArray ( ) ) ,
265- array_ops . stack ( end . ToArray ( ) ) ,
266- array_ops . stack ( strides . ToArray ( ) ) ) ;
267-
268- return gen_array_ops . strided_slice (
269- this ,
270- packed_begin ,
271- packed_end ,
272- packed_strides ,
273- begin_mask : begin_mask ,
274- end_mask : end_mask ,
275- shrink_axis_mask : shrink_axis_mask ,
276- new_axis_mask : new_axis_mask ,
277- ellipsis_mask : ellipsis_mask ,
278-
279- name : name ) ;
280- }
281-
282- throw new NotImplementedException ( "" ) ;
283- } ) ;
248+ end . Add ( 0 ) ;
249+ end_mask |= ( 1 << index ) ;
250+ }
251+ strides . Add ( slice . Step ) ;
252+
253+ index += 1 ;
284254 }
255+
256+ return with ( ops . name_scope ( null , "strided_slice" , new { begin , end , strides } ) , scope =>
257+ {
258+ string name = scope ;
259+ if ( begin != null )
260+ {
261+ var ( packed_begin , packed_end , packed_strides ) =
262+ ( array_ops . stack ( begin . ToArray ( ) ) ,
263+ array_ops . stack ( end . ToArray ( ) ) ,
264+ array_ops . stack ( strides . ToArray ( ) ) ) ;
265+
266+ return gen_array_ops . strided_slice (
267+ this ,
268+ packed_begin ,
269+ packed_end ,
270+ packed_strides ,
271+ begin_mask : begin_mask ,
272+ end_mask : end_mask ,
273+ shrink_axis_mask : shrink_axis_mask ,
274+ new_axis_mask : new_axis_mask ,
275+ ellipsis_mask : ellipsis_mask ,
276+
277+ name : name ) ;
278+ }
279+
280+ throw new NotImplementedException ( "" ) ;
281+ } ) ;
285282 }
286283
287- public Tensor this [ int start ]
284+ public Tensor slice ( int start )
288285 {
289- get
290- {
291- var slice_spec = new int [ ] { start } ;
292- var begin = new List < int > ( ) ;
293- var end = new List < int > ( ) ;
294- var strides = new List < int > ( ) ;
286+ var slice_spec = new int [ ] { start } ;
287+ var begin = new List < int > ( ) ;
288+ var end = new List < int > ( ) ;
289+ var strides = new List < int > ( ) ;
290+
291+ var index = 0 ;
292+ var ( new_axis_mask , shrink_axis_mask ) = ( 0 , 0 ) ;
293+ var ( begin_mask , end_mask ) = ( 0 , 0 ) ;
294+ var ellipsis_mask = 0 ;
295295
296- var index = 0 ;
297- var ( new_axis_mask , shrink_axis_mask ) = ( 0 , 0 ) ;
298- var ( begin_mask , end_mask ) = ( 0 , 0 ) ;
299- var ellipsis_mask = 0 ;
296+ foreach ( var s in slice_spec )
297+ {
298+ begin . Add ( s ) ;
299+ end . Add ( s + 1 ) ;
300+ strides . Add ( 1 ) ;
301+ shrink_axis_mask |= ( 1 << index ) ;
302+ index += 1 ;
303+ }
300304
301- foreach ( var s in slice_spec )
305+ return with ( ops . name_scope ( null , "strided_slice" , new { begin , end , strides } ) , scope =>
306+ {
307+ string name = scope ;
308+ if ( begin != null )
302309 {
303- begin . Add ( s ) ;
304- end . Add ( s + 1 ) ;
305- strides . Add ( 1 ) ;
306- shrink_axis_mask |= ( 1 << index ) ;
307- index += 1 ;
310+ var ( packed_begin , packed_end , packed_strides ) =
311+ ( array_ops . stack ( begin . ToArray ( ) ) ,
312+ array_ops . stack ( end . ToArray ( ) ) ,
313+ array_ops . stack ( strides . ToArray ( ) ) ) ;
314+
315+ return gen_array_ops . strided_slice (
316+ this ,
317+ packed_begin ,
318+ packed_end ,
319+ packed_strides ,
320+ begin_mask : begin_mask ,
321+ end_mask : end_mask ,
322+ shrink_axis_mask : shrink_axis_mask ,
323+ new_axis_mask : new_axis_mask ,
324+ ellipsis_mask : ellipsis_mask ,
325+
326+ name : name ) ;
308327 }
309328
310- return with ( ops . name_scope ( null , "strided_slice" , new { begin , end , strides } ) , scope =>
311- {
312- string name = scope ;
313- if ( begin != null )
314- {
315- var ( packed_begin , packed_end , packed_strides ) =
316- ( array_ops . stack ( begin . ToArray ( ) ) ,
317- array_ops . stack ( end . ToArray ( ) ) ,
318- array_ops . stack ( strides . ToArray ( ) ) ) ;
319-
320- return gen_array_ops . strided_slice (
321- this ,
322- packed_begin ,
323- packed_end ,
324- packed_strides ,
325- begin_mask : begin_mask ,
326- end_mask : end_mask ,
327- shrink_axis_mask : shrink_axis_mask ,
328- new_axis_mask : new_axis_mask ,
329- ellipsis_mask : ellipsis_mask ,
330-
331- name : name ) ;
332- }
333-
334- throw new NotImplementedException ( "" ) ;
335- } ) ;
336- }
329+ throw new NotImplementedException ( "" ) ;
330+ } ) ;
337331 }
338332
339333 public override string ToString ( )
0 commit comments