본문으로 바로가기

[incr Tcl] 키워드 정리

category 카테고리 없음 2024. 6. 25. 11:34

Tcl에서 어느 정도 완벽한 OOP 프로그래밍 구현이 가능하도록 구현된 확장 패키지, [incr Tcl]의 중요 키워드를 정리해 봅니다.

find class ?pattern?

클래스 목록을 나열합니다. 

% itcl::find class ::AW::*
::AW::AhbDualPortZbtFlashCtrl ::AW::OcOr1200PDebugAhb ...

find object ?pattern? ?-class className? ?-isa className?

오브젝트를 검색합니다. -isa는 className으로부터 파생한 오브젝트입니다. 

% itcl::find object * -isa ::AW::ambabus
ambabus_0

local className objName

인스탄스 생성 시 사용하며, 스코프를 벗어나면 자동적으로 인스탄스를 삭제합니다.

code

커맨드의 네임스페이스를 표시합니다. 

% itcl::code ambabus
namespace inscope :: ambabus

scope

변수의 네임스페이스를 표시합니다.

delete class, delete object

클래스와 오브젝트를 제거하며, 파생된 인스탄스도 삭제합니다. 계승된 경우 부모 클래스가 삭제되면 자식과 자식... 인스탄스도 삭제됩니다.

#auto

자동적으로 인스탄스의 이름을 붙입니다. 

% ::AW::ambabus inst#auto
instambabus0
% ::AW::ambabus inst#auto
instambabus1

this

자신 인스탄스의 메쏘드나 변수를 액세스시 사용합니다.

parent::method

현재 클래스에서 부모 클래스의 메쏘드나 변수를 엑세스시 부모클래스명::method를 붙입니다.