108
108
109
109
110
110
< div class ="version ">
111
- < a href ="http://pytorch.org/docs/versions.html "> master (1.0.0a0+fb6535e ) ▼</ a >
111
+ < a href ="http://pytorch.org/docs/versions.html "> master (1.0.0a0+8610ff1 ) ▼</ a >
112
112
</ div >
113
113
114
114
@@ -528,8 +528,17 @@ <h1>Source code for torch.autograd.function</h1><div class="highlight"><pre>
528
528
< span class ="k "> return</ span > < span class ="n "> _map</ span >
529
529
530
530
531
- < span class ="k "> def</ span > < span class ="nf "> _iter_filter</ span > < span class ="p "> (</ span > < span class ="n "> condition</ span > < span class ="p "> ,</ span > < span class ="n "> allow_unknown</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span > < span class ="p "> ,</ span > < span class ="n "> condition_msg</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ):</ span >
531
+ < span class ="k "> def</ span > < span class ="nf "> _jit_unwrap_structured</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ):</ span >
532
+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ,</ span > < span class ="s2 "> "_jit_unwrap"</ span > < span class ="p "> ):</ span >
533
+ < span class ="k "> return</ span > < span class ="n "> obj</ span > < span class ="o "> .</ span > < span class ="n "> _jit_unwrap</ span > < span class ="p "> ()</ span >
534
+ < span class ="k "> return</ span > < span class ="n "> obj</ span >
535
+
536
+
537
+ < span class ="k "> def</ span > < span class ="nf "> _iter_filter</ span > < span class ="p "> (</ span > < span class ="n "> condition</ span > < span class ="p "> ,</ span > < span class ="n "> allow_unknown</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span > < span class ="p "> ,</ span > < span class ="n "> condition_msg</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ,</ span >
538
+ < span class ="n "> conversion</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ):</ span >
532
539
< span class ="k "> def</ span > < span class ="nf "> _iter</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ):</ span >
540
+ < span class ="k "> if</ span > < span class ="n "> conversion</ span > < span class ="ow "> is</ span > < span class ="ow "> not</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
541
+ < span class ="n "> obj</ span > < span class ="o "> =</ span > < span class ="n "> conversion</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> )</ span >
533
542
< span class ="k "> if</ span > < span class ="n "> condition</ span > < span class ="p "> (</ span > < span class ="n "> obj</ span > < span class ="p "> ):</ span >
534
543
< span class ="k "> yield</ span > < span class ="n "> obj</ span >
535
544
< span class ="k "> elif</ span > < span class ="n "> obj</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
@@ -555,6 +564,8 @@ <h1>Source code for torch.autograd.function</h1><div class="highlight"><pre>
555
564
< span class ="c1 "> # specified by proto</ span >
556
565
< span class ="k "> def</ span > < span class ="nf "> unflatten_helper</ span > < span class ="p "> (</ span > < span class ="nb "> input</ span > < span class ="p "> ,</ span > < span class ="n "> proto</ span > < span class ="p "> ):</ span >
557
566
< span class ="n "> res</ span > < span class ="o "> =</ span > < span class ="p "> []</ span >
567
+ < span class ="k "> if</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> proto</ span > < span class ="p "> ,</ span > < span class ="s2 "> "_jit_wrap"</ span > < span class ="p "> ):</ span >
568
+ < span class ="k "> return</ span > < span class ="n "> proto</ span > < span class ="o "> .</ span > < span class ="n "> _jit_wrap</ span > < span class ="p "> (</ span > < span class ="nb "> input</ span > < span class ="p "> )</ span >
558
569
< span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> proto</ span > < span class ="p "> ,</ span > < span class ="p "> (</ span > < span class ="nb "> list</ span > < span class ="p "> ,</ span > < span class ="nb "> tuple</ span > < span class ="p "> )):</ span >
559
570
< span class ="k "> return</ span > < span class ="nb "> input</ span > < span class ="p "> [</ span > < span class ="mi "> 0</ span > < span class ="p "> ],</ span > < span class ="nb "> input</ span > < span class ="p "> [</ span > < span class ="mi "> 1</ span > < span class ="p "> :]</ span >
560
571
< span class ="k "> for</ span > < span class ="n "> e</ span > < span class ="ow "> in</ span > < span class ="n "> proto</ span > < span class ="p "> :</ span >
@@ -570,7 +581,8 @@ <h1>Source code for torch.autograd.function</h1><div class="highlight"><pre>
570
581
571
582
< span class ="n "> _iter_jit_values</ span > < span class ="o "> =</ span > < span class ="n "> _iter_filter</ span > < span class ="p "> (</ span > < span class ="k "> lambda</ span > < span class ="n "> o</ span > < span class ="p "> :</ span > < span class ="n "> o</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="ow "> or</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> o</ span > < span class ="p "> ,</ span > < span class ="n "> torch</ span > < span class ="o "> .</ span > < span class ="n "> _C</ span > < span class ="o "> .</ span > < span class ="n "> Value</ span > < span class ="p "> ),</ span >
572
583
< span class ="n "> condition_msg</ span > < span class ="o "> =</ span > < span class ="s2 "> "jit's Values or None"</ span > < span class ="p "> )</ span >
573
- < span class ="n "> _iter_tensors</ span > < span class ="o "> =</ span > < span class ="n "> _iter_filter</ span > < span class ="p "> (</ span > < span class ="k "> lambda</ span > < span class ="n "> x</ span > < span class ="p "> :</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> x</ span > < span class ="p "> ,</ span > < span class ="n "> torch</ span > < span class ="o "> .</ span > < span class ="n "> Tensor</ span > < span class ="p "> ),</ span > < span class ="n "> condition_msg</ span > < span class ="o "> =</ span > < span class ="s2 "> "Tensors"</ span > < span class ="p "> )</ span >
584
+ < span class ="n "> _iter_tensors</ span > < span class ="o "> =</ span > < span class ="n "> _iter_filter</ span > < span class ="p "> (</ span > < span class ="k "> lambda</ span > < span class ="n "> x</ span > < span class ="p "> :</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> x</ span > < span class ="p "> ,</ span > < span class ="n "> torch</ span > < span class ="o "> .</ span > < span class ="n "> Tensor</ span > < span class ="p "> ),</ span > < span class ="n "> condition_msg</ span > < span class ="o "> =</ span > < span class ="s2 "> "Tensors"</ span > < span class ="p "> ,</ span >
585
+ < span class ="n "> conversion</ span > < span class ="o "> =</ span > < span class ="n "> _jit_unwrap_structured</ span > < span class ="p "> )</ span >
574
586
< span class ="n "> _iter_tensors_permissive</ span > < span class ="o "> =</ span > < span class ="n "> _iter_filter</ span > < span class ="p "> (</ span > < span class ="k "> lambda</ span > < span class ="n "> x</ span > < span class ="p "> :</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> x</ span > < span class ="p "> ,</ span > < span class ="n "> torch</ span > < span class ="o "> .</ span > < span class ="n "> Tensor</ span > < span class ="p "> ),</ span >
575
587
< span class ="n "> allow_unknown</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> ,</ span >
576
588
< span class ="n "> condition_msg</ span > < span class ="o "> =</ span > < span class ="s2 "> "Tensors (permissive)"</ span > < span class ="p "> )</ span >
0 commit comments