| 1 | #!/usr/bin/env python2
|
| 2 | """
|
| 3 | obj_literals.py
|
| 4 | """
|
| 5 | from __future__ import print_function
|
| 6 |
|
| 7 | # Hm in OPy, ALL of these do a bunch of LOAD_CONST, and then BUILD_LIST,
|
| 8 | # BUILD_TUPLE, BUILD_SET. dict is done with BUILD_MAP and STORE_SUBSCR.
|
| 9 |
|
| 10 | # In CPython:
|
| 11 |
|
| 12 | # - the tuple is stored as a whole constant.
|
| 13 | # - A STORE_MAP bytecode is used for the dictionary.
|
| 14 |
|
| 15 | # (CPython tested with ../bin/opyc dis gold/obj_literals.pyc, after manually
|
| 16 | # importing this file.)
|
| 17 |
|
| 18 | def f():
|
| 19 | mylist = [1, 2, 3] # 3 LOAD_CONST then BUILD_LIST
|
| 20 |
|
| 21 | mytuple = ('str', 42)
|
| 22 |
|
| 23 | f(('a', 3))
|
| 24 |
|
| 25 | d = {'key': 3}
|
| 26 | myset = {1, 2}
|