@@ -108,8 +108,7 @@ Contract Factories
108
108
109
109
These factories are not intended to be initialized directly.
110
110
Instead, create contract objects using the :meth: `w3.eth.contract() <web3.eth.Eth.contract> `
111
- method. By default, the contract factory is :class: `Contract `. See the
112
- example in :class: `ConciseContract ` for specifying an alternate factory.
111
+ method. By default, the contract factory is :class: `Contract `.
113
112
114
113
.. py :class :: Contract(address)
115
114
@@ -118,59 +117,6 @@ example in :class:`ConciseContract` for specifying an alternate factory.
118
117
119
118
The address parameter can be a hex address or an ENS name, like ``mycontract.eth ``.
120
119
121
- .. py :class :: ConciseContract(Contract())
122
-
123
- .. warning :: Deprecated: This method is deprecated in favor of the :class:`~ContractCaller` API
124
- or the verbose syntax
125
-
126
- This variation of :class: `Contract ` is designed for more succinct read access,
127
- without making write access more wordy. This comes at a cost of losing
128
- access to features like ``deploy() `` and properties like ``address ``. It is
129
- recommended to use the classic ``Contract `` for those use cases.
130
- Just to be be clear, `ConciseContract ` only exposes contract functions and all
131
- other `Contract ` class methods and properties are not available with the `ConciseContract `
132
- API. This includes but is not limited to ``contract.address ``, ``contract.abi ``, and
133
- ``contract.deploy() ``.
134
-
135
- Create this type of contract by passing a :py:class: `Contract ` instance to
136
- :class: `ConciseContract `:
137
-
138
-
139
- .. code-block :: python
140
-
141
- >> > concise = ConciseContract(myContract)
142
-
143
-
144
- This variation invokes all methods as a call, so if the classic contract had a method like
145
- ``contract.functions.owner().call() ``, you could call it with ``concise.owner() `` instead.
146
-
147
- For access to send a transaction or estimate gas, you can add a keyword argument like so:
148
-
149
-
150
- .. code-block :: python
151
-
152
- >> > concise.withdraw(amount, transact = {' from' : eth.accounts[1 ], ' gas' : 100000 , ... })
153
-
154
- >> > # which is equivalent to this transaction in the classic contract:
155
-
156
- >> > contract.functions.withdraw(amount).transact({' from' : eth.accounts[1 ], ' gas' : 100000 , ... })
157
-
158
- .. py :class :: ImplicitContract(Contract())
159
-
160
- .. warning :: Deprecated: This method is deprecated in favor of the verbose syntax
161
-
162
- This variation mirrors :py:class: `ConciseContract `, but it invokes all methods as a
163
- transaction rather than a call, so if the classic contract had a method like
164
- ``contract.functions.owner.transact() ``, you could call it with ``implicit.owner() `` instead.
165
-
166
- Create this type of contract by passing a :py:class: `Contract ` instance to
167
- :class: `ImplicitContract `:
168
-
169
-
170
- .. code-block :: python
171
-
172
- >> > concise = ImplicitContract(myContract)
173
-
174
120
175
121
Properties
176
122
----------
0 commit comments