polystat / odin

Object Dependency Inspector
10 stars 2 forks source link

@.if in .eo file not supported #52

Closed deemp closed 2 years ago

deemp commented 2 years ago

Tried running with this command that uses this branch of odin. Got

Calling with arguments:
--files ../polystat-data/j2eo-data/hadoop-eo --out ../polystat-data/hadoop-polystat --config configs/hadoop

Creating: ../polystat-data/hadoop-polystat

Using analyzers: Mutual Recursion, Unjustified Assumption

java.lang.Exception: ../polystat-data/j2eo-data/hadoop-eo/hadoop-mapreduce-project/hadoop-mapreduce-examples/src/main/java/org/apache/hadoop/examples/WordMedian.eo: 
        at org.polystat.Main$$anonfun$$nestedInanonfun$runPolystat$7$1.applyOrElse(Main.scala:93)
        at org.polystat.Main$$anonfun$$nestedInanonfun$runPolystat$7$1.applyOrElse(Main.scala:93)
        at scala.PartialFunction$AndThen.applyOrElse(PartialFunction.scala:288)
        at cats.ApplicativeError.$anonfun$recoverWith$1(ApplicativeError.scala:130)
        at flatMap @ org.polystat.odin.analysis.EOOdinAnalyzer$.analyzeSourceCode(EOOdinAnalyzer.scala:149)
        at traverse @ org.polystat.Main$.analyze(Main.scala:55)
        at traverse @ org.polystat.Main$.analyze(Main.scala:55)
        at traverse @ org.polystat.Main$.analyze(Main.scala:55)
        at adaptError$extension @ org.polystat.Main$.$anonfun$runPolystat$7(Main.scala:92)
        at map @ org.polystat.Main$.$anonfun$runPolystat$7(Main.scala:92)
        at flatMap @ org.polystat.Main$.$anonfun$runPolystat$7(Main.scala:92)
        at blocking @ fs2.io.file.FilesCompanionPlatform$AsyncFiles.createTempDirectory(FilesPlatform.scala:162)
        at flatMap @ org.polystat.Main$.$anonfun$runPolystat$4(Main.scala:89)
Caused by: java.lang.IllegalArgumentException: 
:28:39: error: expected one of:
    end of file
28|             expression_placeholder > @.if
   |                                       ^
        at org.polystat.odin.parser.EoParser$$anon$1.$anonfun$parse$1(EoParser.scala:39)
        at cats.syntax.EitherOps$.leftMap$extension(either.scala:172)
        at org.polystat.odin.parser.EoParser$$anon$1.parse(EoParser.scala:39)
        at org.polystat.odin.parser.EoParser$$anon$1.parse(EoParser.scala:30)
        at org.polystat.odin.analysis.EOOdinAnalyzer$.analyzeSourceCode(EOOdinAnalyzer.scala:149)
        at org.polystat.Main$.$anonfun$analyze$1(Main.scala:57)
        at cats.data.Chain$.$anonfun$traverseViaChain$3(Chain.scala:795)
        at cats.Eval$.loop$1(Eval.scala:317)
        at cats.Eval$.cats$Eval$$evaluate(Eval.scala:363)
        at cats.Eval$FlatMap.value(Eval.scala:284)
        at cats.data.Chain$.traverseViaChain(Chain.scala:817)
        at cats.instances.ListInstances$$anon$1.traverse(list.scala:100)
        at cats.instances.ListInstances$$anon$1.traverse(list.scala:17)
        at cats.Traverse$Ops.traverse(Traverse.scala:181)
        at cats.Traverse$Ops.traverse$(Traverse.scala:180)
        at cats.Traverse$ToTraverseOps$$anon$3.traverse(Traverse.scala:206)
        at org.polystat.Main$.analyze(Main.scala:55)
        at org.polystat.Main$.$anonfun$runPolystat$7(Main.scala:92)
nikololiahim commented 2 years ago

To my knowledge, this is not valid EO syntax. Must be a problem with translator.

deemp commented 2 years ago

I'll move this issue into j2eo then