네임 스페이스가 삭제 될 때 새로운 사용자 정의 함수는 삭제되지 않습니다test_ns = New Namespace("Test");
add custom functions({
new custom function("Test", "test_function",
function({},
print("hello world!!");
Return(1);
);
);
});
test_ns << Delete Namespace();
custom_functions = get custom functions();
custom_functions = custom_functions[Loc(custom_functions << get namespace, "Test")];
custom_functions << get name;네임 스페이스를 삭제해도 위와 같이 연결된 사용자 지정 함수는 삭제되지 않습니다.
사용자 정의 기능을 제거하는 유일한 방법은 "사용자 정의 기능 제거"기능을 사용하는 것입니다.
네임 스페이스를 삭제하고 연결된 모든 사용자 지정 함수를 제거하는 방법이 있습니까?
Re : 네임 스페이스를 삭제할 때 새 사용자 정의 함수가 삭제되지 않습니다네임 스페이스와 관련 사용자 정의 함수를 모두 제거하는 기본 방법이 없다고 생각합니다. 그러나 다음과 같은 사용자 정의 함수와 같은 것을 사용할 수 있습니다.
Delete Namespace and Matching Custom Functions = Function({ns}, {i, mask, fs},
fs = Get Custom Functions();
mask = Loc(fs << Get Namespace, ns << Get Name);
If(N Items(mask),
fs = fs[mask];
For(i = 1, i <= N Items(fs), i++,
fs[i] = ((ns << Get Name) || ":" || (fs[i] << Get Name));
);
Remove Custom Functions(fs);
);
ns << Delete Namespace(Force(1));
);
향후 JMP 버전에서이를 관리하는 더 나은 방법을 살펴 보겠습니다.