From 20e39468eb99be4fd382e0c7c16b70fc76e76693 Mon Sep 17 00:00:00 2001
From: Lior Spach <ls12@inf.ufpr.br>
Date: Wed, 27 May 2015 01:45:36 -0300
Subject: [PATCH] Update Expr.scala

---
 src/main/scala/sintatico/Expr.scala | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/src/main/scala/sintatico/Expr.scala b/src/main/scala/sintatico/Expr.scala
index 02ad93f..5dfefa6 100644
--- a/src/main/scala/sintatico/Expr.scala
+++ b/src/main/scala/sintatico/Expr.scala
@@ -1 +1,25 @@
 package sintatico
+
+abstract trait Molecula
+case class Program(name:String, inOut:String*) extends Molecula
+case class Variavel(id:String,tipo:String) extends Molecula
+case class DecVariaveis(vars:Variavel*) extends Molecula
+
+abstract class DecFunPro extends Molecula
+case class DecProcedimento(id:String,params:Parametros*) extends DecFunPro
+case class DecFuncao(id:String,tipoRet:String,params:Parametros*) extends DecFunPro
+case class Parametros(id:String,modo:String,tipo:String) extends Molecula
+
+
+abstract trait Comando extends Molecula
+case class Bloco(comandos:Comando*) extends Comando
+case class Atribuicao(id:String,op:String,expr:ExprInt) extends Comando
+
+abstract trait Chamada extends Comando
+case class ChamadaFuncao(id:String,Args:Argumento*) extends Chamada
+case class ChamadaProcedimento(id:String,Args:Argumento*) extends Chamada
+class Argumento()
+
+class Expr extends Comando
+class ExprInt extends Expr
+class ExprBool extends Expr
\ No newline at end of file
-- 
GitLab