docs: clarify how many number literal types are there

This commit is contained in:
Yoichi Hirai 2016-11-25 10:54:40 +01:00
parent 76dd85edfa
commit a747f1d2c3
No known key found for this signature in database
GPG Key ID: E7B75D080FCF7992

View File

@ -169,9 +169,13 @@ Fixed Point Numbers
Rational and Integer Literals Rational and Integer Literals
----------------------------- -----------------------------
Integer literals and rational number literals belong to a special type. Solidity has a number literal type for each rational number.
The number literal type contains not just single literals Integer literals and rational number literals belong to number literal types.
but all number literal expressions (i.e. the expressions that contain only number literals and operators). Moreover, all number literal expressions (i.e. the expressions that
contain only number literals and operators) belong to number literal
types. So the number literal expressions `1 + 2` and `2 + 1` both
belong to the same number literal type for the rational number three.
Number literal expressions retain arbitrary precision until they are converted to a non-literal type (i.e. by Number literal expressions retain arbitrary precision until they are converted to a non-literal type (i.e. by
using them together with a non-literal expression). using them together with a non-literal expression).
This means that computations do not overflow and divisions do not truncate This means that computations do not overflow and divisions do not truncate