<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=GnuSmalltalkUsersGuide%3ABaseChapter_110</id>
	<title>GnuSmalltalkUsersGuide:BaseChapter 110 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=GnuSmalltalkUsersGuide%3ABaseChapter_110"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=GnuSmalltalkUsersGuide:BaseChapter_110&amp;action=history"/>
	<updated>2026-05-01T12:04:25Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://trans.onionmixer.net/wiki/index.php?title=GnuSmalltalkUsersGuide:BaseChapter_110&amp;diff=4098&amp;oldid=prev</id>
		<title>Onionmixer: GSUG MethodContext 체이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=GnuSmalltalkUsersGuide:BaseChapter_110&amp;diff=4098&amp;oldid=prev"/>
		<updated>2014-01-27T15:26:43Z</updated>

		<summary type="html">&lt;p&gt;GSUG MethodContext 체이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;MethodContext&lt;br /&gt;
&lt;br /&gt;
==MethodContext==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;네임스페이스 Smalltalk에 정의됨&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;슈퍼클래스: ContextPart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;범주: 언어-구현&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:나의 인스턴스들은 능동적으로 실행하는 메서드를 표현한다. 그들은 실행 환경에 관한 정보의 다양한 비트를 기록하고, 실행 스택을 포함한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===MethodContext: 접근하기===&lt;br /&gt;
&lt;br /&gt;
====home====&lt;br /&gt;
&lt;br /&gt;
수신자가 참조하는 MethodContext를 응답하라 (예: 수신자 자체).&lt;br /&gt;
&lt;br /&gt;
====isBlock====&lt;br /&gt;
&lt;br /&gt;
수신자가 블록 컨텍스트인지 응답하라.&lt;br /&gt;
&lt;br /&gt;
block&lt;br /&gt;
&lt;br /&gt;
====isDisabled====&lt;br /&gt;
&lt;br /&gt;
수신자가 실제로 끝난 실행을 갖고 있으며, 리턴을 실행 시 건너뛸 것인지를 응답한다. Non-local 리턴이 실행될 때마다 BlockContexts가 체인에서 제거되지만 MethodContexts는 #ensure:block으로부터 non-local 리턴이 있을 경우를 대비해 체인에 남아야 한다.&lt;br /&gt;
&lt;br /&gt;
====isEnvironment====&lt;br /&gt;
&lt;br /&gt;
해석기가 시작되기 전에도 그에 유효한 실행 환경을 생성하기 위해 GST는 특수 &amp;quot;종료&amp;quot; 메서드를 호출하는 가상 컨텍스트(fake context)를 생성한다. 그러한 컨텍스트는 현재 실행 환경에 대한 마커로 사용할 수 있다. 수신자가 그러한 유형의 컨텍스트인지 여부를 응답하라.&lt;br /&gt;
&lt;br /&gt;
====isUnwind====&lt;br /&gt;
&lt;br /&gt;
컨텍스트가 non-local 리턴 이후에도 실행을 계속해야 하는지를 응답하라 (블록의 enclosing 메서드로부터 리턴 혹은 ContextPart의 #continue: 메서드로의 호출). 그러한 컨텍스트는 #ensure:에 의해서만 생성된다.&lt;br /&gt;
&lt;br /&gt;
====mark====&lt;br /&gt;
&lt;br /&gt;
해석기가 시작되기 전에도 그에 유효한 실행 환경을 생성하기 위해 GST는 특수 &amp;quot;종료&amp;quot; 메서드를 호출하는 가상 컨텍스트(fake context)를 생성한다. 해당 메서드를 이용해 #valueWithUnwind에 의해서도 이와 유사한 컨텍스트가 생성된다. &lt;br /&gt;
&lt;br /&gt;
====sender====&lt;br /&gt;
&lt;br /&gt;
수신자가 전송된 컨텍스트를 리턴하라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===MethodContext: 디버깅하기===&lt;br /&gt;
&lt;br /&gt;
====isInternalExceptionHandlingContext====&lt;br /&gt;
&lt;br /&gt;
수신자가 괄호를 표시할 때 사용자에게 숨겨야 하는 컨텍스트에 해당하는지 응답하라. 그러한 컨텍스트가 괄호에 있는 경우 #exceptionHandlingInternal: attribute: 를 통해 식별되며, 컨텍스트 위의 모든 내용이 내부로 표시된다.&lt;br /&gt;
&lt;br /&gt;
즉, true로 설정되는 속성은 컨텍스트와 그 위의 모든 내용은 숨겨지는 반면 false로 설정된 속성은 컨텍스트 자체를 제외하고 속성 위의 모든 컨텍스트를 숨겨야 함을 의미한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===MethodContext: 인쇄하기===&lt;br /&gt;
&lt;br /&gt;
====printOn: aStream====&lt;br /&gt;
&lt;br /&gt;
수신자에 대한 표현을 aStream 상에 인쇄하라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:GnuSmalltalkUsersGuide]]&lt;/div&gt;</summary>
		<author><name>Onionmixer</name></author>
	</entry>
</feed>