@@ -719,17 +719,14 @@ func expnDollar(prefix, dollar, suffix string, d *data) string {
719719 if d .dType == "" || d .dType == "Image" || d .dType == "RGBA64Image" {
720720 fmt .Fprintf (buf , "" +
721721 "if srcMask != nil {\n " +
722- " _, _, _, ma := srcMask.At(smp.X+%s, smp.Y+%s).RGBA()\n " +
723- " %sr%s = %sr%s * ma / 0xffff\n " +
724- " %sg%s = %sg%s * ma / 0xffff\n " +
725- " %sb%s = %sb%s * ma / 0xffff\n " +
726- " %sa%s = %sa%s * ma / 0xffff\n " +
722+ " _, _, _, ma := srcMask.At(smp.X+%[1] s, smp.Y+%[2] s).RGBA()\n " +
723+ " %[3] sr%[4] s = %[3] sr%[4] s * ma / 0xffff\n " +
724+ " %[3] sg%[4] s = %[3] sg%[4] s * ma / 0xffff\n " +
725+ " %[3] sb%[4] s = %[3] sb%[4] s * ma / 0xffff\n " +
726+ " %[3] sa%[4] s = %[3] sa%[4] s * ma / 0xffff\n " +
727727 "}\n " ,
728728 args [0 ], args [1 ],
729- lhs , tmp , lhs , tmp ,
730- lhs , tmp , lhs , tmp ,
731- lhs , tmp , lhs , tmp ,
732- lhs , tmp , lhs , tmp ,
729+ lhs , tmp ,
733730 )
734731 }
735732 case "image.RGBA64Image" :
@@ -752,44 +749,35 @@ func expnDollar(prefix, dollar, suffix string, d *data) string {
752749 }
753750 case "*image.Gray" :
754751 fmt .Fprintf (buf , "" +
755- "%si := %s\n " +
756- "%sr%s := uint32(src.Pix[%si]) * 0x101\n " ,
757- lhs , pixOffset ("src" , args [0 ], args [1 ], "" , "*src.Stride" ),
758- lhs , tmp , lhs ,
752+ "%[1]si := %[3]s\n " +
753+ "%[1]sr%[2]s := uint32(src.Pix[%[1]si]) * 0x101\n " ,
754+ lhs , tmp , pixOffset ("src" , args [0 ], args [1 ], "" , "*src.Stride" ),
759755 )
760756 case "*image.NRGBA" :
761757 fmt .Fprintf (buf , "" +
762- "%si := %s\n " +
763- "%sa%s := uint32(src.Pix[%si+3]) * 0x101\n " +
764- "%sr%s := uint32(src.Pix[%si+0]) * %sa%s / 0xff\n " +
765- "%sg%s := uint32(src.Pix[%si+1]) * %sa%s / 0xff\n " +
766- "%sb%s := uint32(src.Pix[%si+2]) * %sa%s / 0xff\n " ,
767- lhs , pixOffset ("src" , args [0 ], args [1 ], "*4" , "*src.Stride" ),
768- lhs , tmp , lhs ,
769- lhs , tmp , lhs , lhs , tmp ,
770- lhs , tmp , lhs , lhs , tmp ,
771- lhs , tmp , lhs , lhs , tmp ,
758+ "%[1]si := %[3]s\n " +
759+ "%[1]sa%[2]s := uint32(src.Pix[%[1]si+3]) * 0x101\n " +
760+ "%[1]sr%[2]s := uint32(src.Pix[%[1]si+0]) * %[1]sa%s / 0xff\n " +
761+ "%[1]sg%[2]s := uint32(src.Pix[%[1]si+1]) * %[1]sa%s / 0xff\n " +
762+ "%[1]sb%[2]s := uint32(src.Pix[%[1]si+2]) * %[1]sa%s / 0xff\n " ,
763+ lhs , tmp , pixOffset ("src" , args [0 ], args [1 ], "*4" , "*src.Stride" ),
772764 )
773765 case "*image.RGBA" :
774766 fmt .Fprintf (buf , "" +
775- "%si := %s\n " +
776- "%sr%s := uint32(src.Pix[%si+0]) * 0x101\n " +
777- "%sg%s := uint32(src.Pix[%si+1]) * 0x101\n " +
778- "%sb%s := uint32(src.Pix[%si+2]) * 0x101\n " +
779- "%sa%s := uint32(src.Pix[%si+3]) * 0x101\n " ,
780- lhs , pixOffset ("src" , args [0 ], args [1 ], "*4" , "*src.Stride" ),
781- lhs , tmp , lhs ,
782- lhs , tmp , lhs ,
783- lhs , tmp , lhs ,
784- lhs , tmp , lhs ,
767+ "%[1]si := %[3]s\n " +
768+ "%[1]sr%[2]s := uint32(src.Pix[%[1]si+0]) * 0x101\n " +
769+ "%[1]sg%[2]s := uint32(src.Pix[%[1]si+1]) * 0x101\n " +
770+ "%[1]sb%[2]s := uint32(src.Pix[%[1]si+2]) * 0x101\n " +
771+ "%[1]sa%[2]s := uint32(src.Pix[%[1]si+3]) * 0x101\n " ,
772+ lhs , tmp , pixOffset ("src" , args [0 ], args [1 ], "*4" , "*src.Stride" ),
785773 )
786774 case "*image.YCbCr" :
787775 fmt .Fprintf (buf , "" +
788- "%si := %s\n " +
789- "%sj := %s\n " +
790- "%s\n " ,
776+ "%[1] si := %[2] s\n " +
777+ "%[1] sj := %[3] s\n " +
778+ "%[4] s\n " ,
791779 lhs , pixOffset ("src" , args [0 ], args [1 ], "" , "*src.YStride" ),
792- lhs , cOffset (args [0 ], args [1 ], d .sratio ),
780+ cOffset (args [0 ], args [1 ], d .sratio ),
793781 ycbcrToRGB (lhs , tmp ),
794782 )
795783 }
@@ -798,36 +786,31 @@ func expnDollar(prefix, dollar, suffix string, d *data) string {
798786 switch d .sType {
799787 default :
800788 fmt .Fprintf (buf , "" +
801- "%sr %s float64(%sru)%s\n " +
802- "%sg %s float64(%sgu)%s\n " +
803- "%sb %s float64(%sbu)%s\n " +
804- "%sa %s float64(%sau)%s\n " ,
805- lhs , eqOp , lhs , extra ,
806- lhs , eqOp , lhs , extra ,
807- lhs , eqOp , lhs , extra ,
808- lhs , eqOp , lhs , extra ,
789+ "%[1]sr %[2]s float64(%[1]sru)%[3]s\n " +
790+ "%[1]sg %[2]s float64(%[1]sgu)%[3]s\n " +
791+ "%[1]sb %[2]s float64(%[1]sbu)%[3]s\n " +
792+ "%[1]sa %[2]s float64(%[1]sau)%[3]s\n " ,
793+ lhs , eqOp , extra ,
809794 )
810795 case "*image.Gray" :
811796 fmt .Fprintf (buf , "" +
812- "%sr %s float64(%sru)%s\n " ,
813- lhs , eqOp , lhs , extra ,
797+ "%[1] sr %[2] s float64(%[1] sru)%[3] s\n " ,
798+ lhs , eqOp , extra ,
814799 )
815800 case "*image.YCbCr" :
816801 fmt .Fprintf (buf , "" +
817- "%sr %s float64(%sru)%s\n " +
818- "%sg %s float64(%sgu)%s\n " +
819- "%sb %s float64(%sbu)%s\n " ,
820- lhs , eqOp , lhs , extra ,
821- lhs , eqOp , lhs , extra ,
822- lhs , eqOp , lhs , extra ,
802+ "%[1]sr %[2]s float64(%[1]sru)%[3]s\n " +
803+ "%[1]sg %[2]s float64(%[1]sgu)%[3]s\n " +
804+ "%[1]sb %[2]s float64(%[1]sbu)%[3]s\n " ,
805+ lhs , eqOp , extra ,
823806 )
824807 case "image.RGBA64Image" :
825808 fmt .Fprintf (buf , "" +
826- "%[1]sr %[2]s float64(%[3 ]su.R)%[4 ]s\n " +
827- "%[1]sg %[2]s float64(%[3 ]su.G)%[4 ]s\n " +
828- "%[1]sb %[2]s float64(%[3 ]su.B)%[4 ]s\n " +
829- "%[1]sa %[2]s float64(%[3 ]su.A)%[4 ]s\n " ,
830- lhs , eqOp , lhs , extra ,
809+ "%[1]sr %[2]s float64(%[1 ]su.R)%[3 ]s\n " +
810+ "%[1]sg %[2]s float64(%[1 ]su.G)%[3 ]s\n " +
811+ "%[1]sb %[2]s float64(%[1 ]su.B)%[3 ]s\n " +
812+ "%[1]sa %[2]s float64(%[1 ]su.A)%[3 ]s\n " ,
813+ lhs , eqOp , extra ,
831814 )
832815 }
833816 }
0 commit comments