@Use("java")
Klar usa @Use para declarar o alvo de backend para uma função.
Atualmente:
@Useé obrigatório em todas as funções.- Apenas
@Use("java")é suportado.
Isso é por design: explicitação em vez de convenção.
Exemplo
@Use("java")
public void main(){
println("Hello!");
return null;
}
Anotação ausente
Se você omitir @Use, Klar emite um diagnóstico de sintaxe como:
[K:E113] MissingAnnotation
ERROR (SYNTAX)
...
Expected:
'@Use'
Alvo não suportado
Se você especificar um alvo de backend não suportado:
@Use("python")
public void main(){
return null;
}
Klar emite um diagnóstico de backend:
[K:E400] UnknownBackendTarget
ERROR (BACKEND)
...
Cause:
Unsupported backend target 'python'
Fix:
Use a supported backend (currently only 'java' is supported)
Roadmap
Planejado: interoperabilidade começando com interop JSON.
Backends adicionais existem como uma direção de longo prazo, não uma promessa atual.