stateMutability: una cadena con uno de los siguientes valores: puro (especificado para no leer el estado de la cadena de bloques), vista (especificado para no modificar el estado de la cadena de bloques), no pagable y pagadero (igual que el pago anterior).
constante: verdadero si la función se especifica para nunca modificar el estado de la cadena de bloques; pagadero: verdadero si la función acepta ether, el valor predeterminado es falso.
constant
ha quedado en desuso en favor de pure
y view
- ver aquí
pure
se utiliza para funciones en las que el estado ni siquiera se lee (p. ej., funciones de tipo SafeMath), mientras que view
se utiliza para funciones que no cambian de estado pero sí lo leen.
en términos de ABI, constant
se retuvo por compatibilidad con versiones anteriores:
Observaciones:
JSON ABI tiene una nueva mutabilidad de estado de campo introducida con un valor de cadena como el anterior
JSON ABI se mantiene constante/de pago por compatibilidad con versiones anteriores durante un tiempo
stateMutability
término ya que la vista/constante ya está definida en la firma de la función.constant
y payable
se retuvo por compatibilidad con versiones anteriores. ¡Gracias!
ismael