update query (base)

This commit is contained in:
jeffcheasey88 2025-04-23 22:27:30 +02:00
parent 4e9e1034fa
commit 1e06faf0c4
3 changed files with 13 additions and 14 deletions

Binary file not shown.

View file

@ -36,6 +36,8 @@ import dev.peerat.parser.java.JavaParser;
import dev.peerat.parser.java.operation.ReturnOperation; import dev.peerat.parser.java.operation.ReturnOperation;
import dev.peerat.parser.java.value.InstanceValue; import dev.peerat.parser.java.value.InstanceValue;
import dev.peerat.parser.java.value.StaticValue; import dev.peerat.parser.java.value.StaticValue;
import dev.peerat.parser.java.visitor.JavaVisitor;
import dev.peerat.parser.visitor.Operator;
public class TreasureProcessor extends AbstractProcessor{ public class TreasureProcessor extends AbstractProcessor{
@ -77,16 +79,16 @@ public class TreasureProcessor extends AbstractProcessor{
} }
Provider provider = null; Provider provider = null;
for(Entry<File, JavaFile> classes : map.entrySet()){ for(Entry<File, JavaFile> classes : map.entrySet()){
List<InstanceValue> values = new ArrayList<>(); List<InstanceValue> ships = Operator.or(
classes.getValue().findAll((e) -> { JavaVisitor.allValue() //check if value is instance value for dev.peerat.mapping.Ship
if(e instanceof InstanceValue){ ,
InstanceValue iv = (InstanceValue)e; JavaVisitor.allImport() //check if import for dev.peerat.mapping.Ship AND THEN instance value for dev.peerat.mapping.Ship OR Ship.
return iv.getToken().getValue().equals("Ship()"); //can also be dev.peerat.mapping.Ship ).visit(classes.getValue()).toList();
} if(ships.isEmpty()) continue;
return false;
}, values); //TODO accept multiple instance of Ship
if(values.size() < 1) continue;
InstanceValue ship = (InstanceValue)values.get(0); InstanceValue ship = (InstanceValue)ships.get(0);
String providerType = ((StaticValue)ship.getParameters().get(0)).getToken().getValue().replace("\"", ""); String providerType = ((StaticValue)ship.getParameters().get(0)).getToken().getValue().replace("\"", "");
provider = ProviderManager.getInstance().getProvider(providerType); provider = ProviderManager.getInstance().getProvider(providerType);
} }

View file

@ -91,10 +91,7 @@ public class MySQLProvider implements Provider{
for(MySQLRequestBuilder request : this.requests){ for(MySQLRequestBuilder request : this.requests){
Function base = request.getFunction(); Function base = request.getFunction();
JavaFunctionBuilder func = ofFunction(base.getReturnType().getValue(), "getter_"+base.getName().getValue()).setPublic(); JavaFunctionBuilder func = ofFunction().normalizeSignature(base).setName("getter_"+base.getName().getValue()).setPublic();
for(Variable params : base.getParameters()){
func.parameter(ofVariable(params.getType().getValue(), params.getName().getValue(), params.getValue()));
}
clazz.element( clazz.element(
func.element( func.element(
ofOperation("try{" ofOperation("try{"