Parse floats with 'F' or 'f' suffix
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
fun box(): String {
|
||||
if (1F != 1.toFloat()) return "fail 1"
|
||||
if (1.0F != 1.0.toFloat()) return "fail 2"
|
||||
if (1e1F != 1e1.toFloat()) return "fail 3"
|
||||
if (1.0e1F != 1.0e1.toFloat()) return "fail 4"
|
||||
if (1e-1F != 1e-1.toFloat()) return "fail 5"
|
||||
if (1.0e-1F != 1.0e-1.toFloat()) return "fail 6"
|
||||
|
||||
if (1f != 1.toFloat()) return "fail 7"
|
||||
if (1.0f != 1.0.toFloat()) return "fail 8"
|
||||
if (1e1f != 1e1.toFloat()) return "fail 9"
|
||||
if (1.0e1f != 1.0e1.toFloat()) return "fail 10"
|
||||
if (1e-1f != 1e-1.toFloat()) return "fail 11"
|
||||
if (1.0e-1f != 1.0e-1.toFloat()) return "fail 12"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
val a1: Float = 1F
|
||||
val a2: Float = 1.0F
|
||||
val a3: Float = 1e-1F
|
||||
val a4: Float = 1.0e-1F
|
||||
|
||||
val b5: Float = 1f
|
||||
val b6: Float = 1.0f
|
||||
val b7: Float = 1e-1f
|
||||
val b8: Float = 1.0e-1f
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package test
|
||||
|
||||
// val prop1: 1.0.toFloat()
|
||||
val prop1 = 1F
|
||||
|
||||
// val prop2: 1.0.toFloat()
|
||||
val prop2 = 1.0F
|
||||
|
||||
// val prop3: 0.1.toFloat()
|
||||
val prop3 = 1e-1F
|
||||
|
||||
// val prop4: 0.1.toFloat()
|
||||
val prop4 = 1.0e-1F
|
||||
|
||||
// val prop5: 1.0.toFloat()
|
||||
val prop5 = 1f
|
||||
|
||||
// val prop6: 1.0.toFloat()
|
||||
val prop6 = 1.0f
|
||||
|
||||
// val prop7: 0.1.toFloat()
|
||||
val prop7 = 1e-1f
|
||||
|
||||
// val prop8: 0.1.toFloat()
|
||||
val prop8 = 1.0e-1f
|
||||
@@ -0,0 +1,20 @@
|
||||
val array = array<Any>(
|
||||
1,
|
||||
1.0,
|
||||
1e1,
|
||||
1.0e1,
|
||||
1e-1,
|
||||
1.0e-1,
|
||||
1F,
|
||||
1.0F,
|
||||
1e1F,
|
||||
1.0e1F,
|
||||
1e-1F,
|
||||
1.0e-1F,
|
||||
1f,
|
||||
1.0f,
|
||||
1e1f,
|
||||
1.0e1f,
|
||||
1e-1f,
|
||||
1.0e-1f
|
||||
)
|
||||
@@ -0,0 +1,114 @@
|
||||
JetFile: FloatingPointLiteral.kt
|
||||
NAMESPACE_HEADER
|
||||
<empty list>
|
||||
PROPERTY
|
||||
PsiElement(val)('val')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(IDENTIFIER)('array')
|
||||
PsiWhiteSpace(' ')
|
||||
PsiElement(EQ)('=')
|
||||
PsiWhiteSpace(' ')
|
||||
CALL_EXPRESSION
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('array')
|
||||
TYPE_ARGUMENT_LIST
|
||||
PsiElement(LT)('<')
|
||||
TYPE_PROJECTION
|
||||
TYPE_REFERENCE
|
||||
USER_TYPE
|
||||
REFERENCE_EXPRESSION
|
||||
PsiElement(IDENTIFIER)('Any')
|
||||
PsiElement(GT)('>')
|
||||
VALUE_ARGUMENT_LIST
|
||||
PsiElement(LPAR)('(')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
INTEGER_CONSTANT
|
||||
PsiElement(INTEGER_LITERAL)('1')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1e1')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0e1')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1e-1')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0e-1')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1F')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0F')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1e1F')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0e1F')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1e-1F')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0e-1F')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1f')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0f')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1e1f')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0e1f')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1e-1f')
|
||||
PsiElement(COMMA)(',')
|
||||
PsiWhiteSpace('\n ')
|
||||
VALUE_ARGUMENT
|
||||
FLOAT_CONSTANT
|
||||
PsiElement(FLOAT_CONSTANT)('1.0e-1f')
|
||||
PsiWhiteSpace('\n')
|
||||
PsiElement(RPAR)(')')
|
||||
Reference in New Issue
Block a user