package gui.component;
import ast.Visitor;
import ast.form.Block;
import ast.form.Computedquest;
import ast.form.Form;
import ast.form.IfElse;
import ast.form.Ifstate;
import ast.form.Question;
import ast.form.StatementList;
import ast.literals.BoolLiteral;
import ast.literals.IntLiteral;
import ast.literals.StrLiteral;
import ast.type.Booltype;
import ast.type.Inttype;
import ast.type.Strtype;
import expr.Ident;
import expr.conditional.And;
import expr.conditional.Or;
import expr.operation.Add;
import expr.operation.Div;
import expr.operation.Mul;
import expr.operation.Sub;
import expr.relational.Eq;
import expr.relational.GEq;
import expr.relational.GT;
import expr.relational.LEq;
import expr.relational.LT;
import expr.relational.NEq;
import expr.unary.Neg;
import expr.unary.Not;
import expr.unary.Pos;
import gui.render.State;
public class TypeToWidget implements Visitor<Control> {
String description;
Ident id;
Form form;
State state;
public TypeToWidget(String description, Ident id, Form form, State state){
this.description=description;
this.id=id;
this.form=form;
this.state=state;
}
@Override
public Control visit(Booltype node) {
return new CheckBox(description, id, form, state);
}
@Override
public Control visit(Inttype node) {
return new TextField(description, id);
}
@Override
public Control visit(Strtype node) {
return new TextField(description, id);
}
@Override
public Control visit(Pos node) {
return null;
}
@Override
public Control visit(Neg node) {
return null;
}
@Override
public Control visit(Not node) {
return null;
}
@Override
public Control visit(Add node) {
return null;
}
@Override
public Control visit(And node) {
return null;
}
@Override
public Control visit(Div node) {
return null;
}
@Override
public Control visit(Eq node) {
return null;
}
@Override
public Control visit(GEq node) {
return null;
}
@Override
public Control visit(GT node) {
return null;
}
@Override
public Control visit(LEq node) {
return null;
}
@Override
public Control visit(LT node) {
return null;
}
@Override
public Control visit(Mul node) {
return null;
}
@Override
public Control visit(NEq node) {
return null;
}
@Override
public Control visit(Or node) {
return null;
}
@Override
public Control visit(Sub node) {
return null;
}
@Override
public Control visit(BoolLiteral node) {
return null;
}
@Override
public Control visit(Ident node) {
return null;
}
@Override
public Control visit(IntLiteral node) {
return null;
}
@Override
public Control visit(StrLiteral node) {
return null;
}
@Override
public Control visit(StatementList node) {
return null;
}
@Override
public Control visit(Question node) {
return null;
}
@Override
public Control visit(Computedquest node) {
return null;
}
@Override
public Control visit(Block node) {
return null;
}
@Override
public Control visit(Ifstate node) {
return null;
}
@Override
public Control visit(IfElse node) {
return null;
}
@Override
public Control visit(Form node) {
return null;
}
}