]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/parsing/parser/SCLBlockParser.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / internal / parsing / parser / SCLBlockParser.java
1 package org.simantics.scl.compiler.internal.parsing.parser;
2
3 import java.io.Reader;
4 import java.util.ArrayList;
5
6 import org.simantics.scl.compiler.elaboration.expressions.EBlock;
7 import org.simantics.scl.compiler.elaboration.expressions.block.Statement;
8 import org.simantics.scl.compiler.module.ImportDeclaration;
9
10 public class SCLBlockParser extends SCLParserImpl {
11
12     public final ArrayList<ImportDeclaration> imports = new ArrayList<ImportDeclaration>(2);
13     public final EBlock block = new EBlock();
14     
15     public SCLBlockParser(Reader reader) {
16         super(reader);
17     }
18     
19     @Override
20     protected Object reduceStatementCommand() {
21         Statement statement = (Statement)get(0);
22         block.addStatement(statement);
23         return null;
24     }
25     
26     @Override
27     protected Object reduceImportCommand() {
28         ImportDeclaration importDeclaration = (ImportDeclaration)get(0);
29         imports.add(importDeclaration);
30         return null;
31     }
32
33 }