2009-07-31 3 views
5

호스팅 드라이버에서 개체를 업데이트하면 구문 오류가 표시되고 런타임은 적절한 방법으로 기록됩니다. 객체에서 전역을 검사하고 명령을 사용하여 상속 할 수 있지만 함수 범위의 변수 및 매개 변수를 검사하거나 함수를 단계별로 실행하고 실행 중에 을 검사 할 때 손실이 발생합니다.LPC 코드 디버깅/테스트

내 코드에 printf 문을 디버깅 할 수 있지만 다루기가 어렵습니다. 일부 문제의 경우 printf을 추가하려면보고 싶은 변수가 포함 된 코드에 대한 쓰기 권한이 필요합니다. 항상 사용할 수있는 것은 아닙니다.

드라이버에서 LPC 기능을 단계적으로 수행 할 수 있습니까, 아니면 IDE에 "가짜"드라이버가 내장되어 있습니까? 아니면 perl -d과 같이 단계별 처리가 가능한 인터프리터가 있습니까?

답변

1

현재 LPMud 드라이버에는 이와 같은 기능이 없습니다. LP 드라이버가 설계된 방식과 거의 정반대입니다. 즉, 디버깅을 단계별로 수행하는 방식으로 코드 실행이 드라이버를 유지할 수 없도록 설계되었습니다.

나는 이것들을 해결하기 위해 한 일은 특별히 도움이되었다는 것을 알게 될 것입니다. 임의의 값을 전달할 수있는 set_error_advisory()을 만들었습니다. 그런 다음 마스터 객체 오류 처리기에서보고하고보고합니다. 오류가 발생하면 특히 관련 로컬 범위 정보를 디버그 출력으로 가져 오는 데이 방법을 사용합니다.

1

거의 모든 개발자가 한 번에 또는 다른 것을 원했지만 현재 LPMUD 및 LDMUD 드라이버에는 그러한 디버깅 기능이 없습니다.

Zesstra/Gnomi (LDMUD 3.5의 현재 개발자 : svn : //svn.bearnip.com/ldmud/trunk)에게 드라이버에 이러한 코드를 추가 할 수있는 힌트를 물어볼 것을 권장합니다.