2009-09-17 11 views
6

Mi piacerebbe essere in grado di creare un modello live in Idea di Jetbrain che registrerà gli argomenti del metodo. Chiamiamolo "larg". Funzionerebbe come:Idea modello dal vivo per registrare il metodo Arg

public void get(String one, String two) { 
    larg<tab> 

per creare

public void get(String one, String two) { 
    log.info("get: one = " + one + " two = " + two); 

sto bene con ottenere il nome del metodo, ma non ho capito come tirare negli argomenti di metodo. Qualche idea?

risposta

11

Sono 4 anni di ritardo, ma il modello predefinito soutp praticamente fa questo utilizzando una variabile groovyscript.

Ecco lo script Groovy che fa quello che stai cercando

groovyScript("'\"' + _1.collect { it + ' = [\" + ' + it + ' + \"]'}.join(', ') + '\"'", methodParameters()) 
+1

Non era chiaro per me che questo funzionasse in java. Se vai a [Modelli dal vivo] -> [output] -> [soutp] vedrai questo script in azione e funzionerà sicuramente. Grazie! – BoredAndroidDeveloper

+0

Funziona anche per javascript? Provato senza fortuna, forse mi sono perso qualcosa –

+0

Semplice, ma correlato: per accedere solo al primo, al secondo, al terzo ecc. Parametro di _1, usa semplicemente '_1 [0]', '_1 [1]', ecc. – Voy

0

Sembra che non sia attualmente possibile con un modello live.

Dal Jetbrain's forum:

There is no predefined live template function to do this for you automatically. 
You can write a plugin that would provide such a function. 
Problemi correlati