Spazi dei nomi nascostiMi piacerebbe se ci fosse la possibilità di spazi dei nomi nascosti
Dove
Names default to here(1);
new namespace("_Test");
get namespace names()
non mostrerebbe lo spazio dei nomi "_Test".
ScriptingRi: spazi dei nomi nascostiIl mio primo pensiero è usare gli spazi dei nomi nel codice cliente a cui non vogliamo che abbiano accesso. Posso crittografarlo ma se ci sono flag in posizione vengono visualizzati i nomi ei valori delle variabili. Da quello che sembra non riesco nemmeno a nascondere le variabili in uno spazio dei nomi.
Names default to here(1);
__x = 5;
show symbols();
new namespace("__Test",
{
a = 1,
__hidden = 2,
__hidden_function = function({},
print("hidden")
)
}
);
get namespaces();
Sto solo cercando di proteggere un po 'meglio il codice proprietario.
Il mio grande caso d'uso per JMP 14 è che adoro la nuova funzione personalizzata (). Ma per usarlo, richiede l'uso di uno spazio dei nomi.
Ri: spazi dei nomi nascostiPuoi spiegare un po 'il caso d'uso qui? Quali sono i vantaggi di uno spazio dei nomi nascosto?
Ri: spazi dei nomi nascostiSiamo spiacenti, supponevo che avrebbe funzionato allo stesso modo delle variabili nascoste _Test. Anche il privato funzionerebbe.
Ri: spazi dei nomi nascostiScusa, ho letto male la tua richiesta. Sono d'accordo che il tuo suggerimento potrebbe essere utile.
Solo un suggerimento, potrebbe voler specificare un utilizzo preferito; qualcosa di simile a:
- Nuovo spazio dei nomi ( "_Test" , Privato | invisibile); , o
- Nuovo spazio dei nomi ( "_Test" , Parola d'ordine ( "xyz" ));
Preferirei il primo utilizzo del proiettile.
Ri: spazi dei nomi nascostiVoglio che NON mostri quei nomi.
Ri: spazi dei nomi nascosti @vince_faller , Ho JMP PRO 14.3 su Windows e qui è una schermata che mostra ottenere nomi spazio dei nomi () restituisce i nomi. Di seguito è riportato uno script che lo dimostra mostra spazi dei nomi () con la cattura del registro è un'altra alternativa.

Names default to here(1);
new namespace("_Test");
new namespace("_Test2");
new namespace("_Test3");
_xx= Words(Trim(Log Capture(show namespaces())), "\!N");
show(_xx);
get namespace names();
Namespace("_Test3") << delete namespace;
get namespace names();
Namespace("_Test2") << delete namespace;
get namespace names();
Namespace("_Test") << delete namespace;
get namespace names();