@@ -765,8 +765,59 @@ the more significant byte last.
765
765
766
766
.. opcode :: BUILD_MAP (count)
767
767
768
- Pushes a new dictionary object onto the stack. The dictionary is pre-sized
769
- to hold *count * entries.
768
+ Pushes a new dictionary object onto the stack. Pops ``2 * count `` items
769
+ so that the dictionary holds *count * entries:
770
+ ``{..., TOS3: TOS2, TOS1: TOS} ``.
771
+
772
+ .. versionchanged :: 3.5
773
+ The dictionary is created from stack items instead of creating an
774
+ empty dictionary pre-sized to hold *count * items.
775
+
776
+
777
+ .. opcode :: BUILD_TUPLE_UNPACK (count)
778
+
779
+ Pops *count * iterables from the stack, joins them in a single tuple,
780
+ and pushes the result. Implements iterable unpacking in tuple
781
+ displays ``(*x, *y, *z) ``.
782
+
783
+ .. versionadded :: 3.5
784
+
785
+
786
+ .. opcode :: BUILD_LIST_UNPACK (count)
787
+
788
+ This is similar to :opcode: `BUILD_TUPLE_UNPACK `, but pushes a list
789
+ instead of tuple. Implements iterable unpacking in list
790
+ displays ``[*x, *y, *z] ``.
791
+
792
+ .. versionadded :: 3.5
793
+
794
+
795
+ .. opcode :: BUILD_SET_UNPACK (count)
796
+
797
+ This is similar to :opcode: `BUILD_TUPLE_UNPACK `, but pushes a set
798
+ instead of tuple. Implements iterable unpacking in set
799
+ displays ``{*x, *y, *z} ``.
800
+
801
+ .. versionadded :: 3.5
802
+
803
+
804
+ .. opcode :: BUILD_MAP_UNPACK (count)
805
+
806
+ Pops *count * mappings from the stack, merges them into a single dictionary,
807
+ and pushes the result. Implements dictionary unpacking in dictionary
808
+ displays ``{**x, **y, **z} ``.
809
+
810
+ .. versionadded :: 3.5
811
+
812
+
813
+ .. opcode :: BUILD_MAP_UNPACK_WITH_CALL (oparg)
814
+
815
+ This is similar to :opcode: `BUILD_MAP_UNPACK `,
816
+ but is used for ``f(**x, **y, **z) `` call syntax. The lowest byte of
817
+ *oparg * is the count of mappings, the relative position of the
818
+ corresponding callable ``f `` is encoded in the second byte of *oparg *.
819
+
820
+ .. versionadded :: 3.5
770
821
771
822
772
823
.. opcode :: LOAD_ATTR (namei)
0 commit comments