Fixed: [Issue 102] Support for scientific notation for floating point
options
diff --git a/com.google.eclipse.protobuf.test/src/com/google/eclipse/protobuf/conversion/FLOATValueConverter_toValue_Test.java b/com.google.eclipse.protobuf.test/src/com/google/eclipse/protobuf/conversion/FLOATValueConverter_toValue_Test.java
index 520e078..03e58d8 100644
--- a/com.google.eclipse.protobuf.test/src/com/google/eclipse/protobuf/conversion/FLOATValueConverter_toValue_Test.java
+++ b/com.google.eclipse.protobuf.test/src/com/google/eclipse/protobuf/conversion/FLOATValueConverter_toValue_Test.java
@@ -39,6 +39,9 @@
@Parameters
public static Collection<Object[]> parameters() {
return asList(new Object[][] {
+ { "52e3", 52e3F },
+ { "52E3", 52e3F },
+ { "6e-3", 0.006F },
{ "6.8", 6.8F },
{ "-3.1", -3.1F },
{ ".3", 0.3F }
diff --git a/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/Protobuf.xtext b/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/Protobuf.xtext
index c9f1c3a..3c3a1bd 100644
--- a/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/Protobuf.xtext
+++ b/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/Protobuf.xtext
@@ -143,7 +143,7 @@
float=FLOAT;
terminal FLOAT returns ecore::EFloat:
- ('-')? (NUMBER)* ('.' (NUMBER)+)?;
+ ('-')? (NUMBER)* ('.' (NUMBER)+)? (('e'|'E')('-')? (NUMBER)+)?;
StringRef:
string=STRING;