<?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_130</id>
	<title>GnuSmalltalkUsersGuide:BaseChapter 130 - 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_130"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=GnuSmalltalkUsersGuide:BaseChapter_130&amp;action=history"/>
	<updated>2026-05-02T08:35: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_130&amp;diff=4118&amp;oldid=prev</id>
		<title>Onionmixer: GSUG PositionableStream 페이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=GnuSmalltalkUsersGuide:BaseChapter_130&amp;diff=4118&amp;oldid=prev"/>
		<updated>2014-01-27T16:24:24Z</updated>

		<summary type="html">&lt;p&gt;GSUG PositionableStream 페이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;PositionableStream&lt;br /&gt;
&lt;br /&gt;
==PositionableStream==&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;슈퍼클래스: Stream&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;
:나의 인스턴스들은 명시적 위치지정이 허용되는 스트림을 나타낸다. 따라서 나의 스트림은 일반 디스크 파일에서와 같이 행위한다: 순차적으로 읽거나 쓸 수 있을 뿐만 아니라 당신이 어떤 장소를 선택할 때마다 파일을 위치시킨다. 일반적으로는 나를 대신해 ReadStream, WriteStream, ReadStream을 이용해 스트림을 생성하거나 사용하길 원할 것이다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream 클래스: 인스턴스 생성===&lt;br /&gt;
&lt;br /&gt;
====on: aCollection====&lt;br /&gt;
&lt;br /&gt;
aCollection의 전체 내용에서 스트리밍하는 수신자의 인스턴스를 응답하라.&lt;br /&gt;
&lt;br /&gt;
====on: aCollection from: firstIndex to: lastIndex====&lt;br /&gt;
&lt;br /&gt;
aCollection의 firstIndex 번째 항목부터 lastIndex번째 항목까지 스트리밍하는 수신자의 인스턴스를 응답하라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 접근하기-읽기===&lt;br /&gt;
&lt;br /&gt;
====close====&lt;br /&gt;
&lt;br /&gt;
보조기억장치(backing store)로부터 스트림을 연관해제(disassociate)하라. &lt;br /&gt;
&lt;br /&gt;
====contents====&lt;br /&gt;
&lt;br /&gt;
마지막 요소까지를 포함해 스트림이 접근하는 것과 같은 타입의 컬렉션을 리턴하라.&lt;br /&gt;
&lt;br /&gt;
====copyFrom: start to: end====&lt;br /&gt;
&lt;br /&gt;
start번째 항목부터 end번째 항목까지 수신자가 스트리밍하는 데이터를 응답하라. 해당 메서드는 Collection 내의 메서드와 달리 0부터 시작되는데, Stream의 #position 메서드가 0부터 시작되는 값을 리턴하기 때문이다.&lt;br /&gt;
&lt;br /&gt;
====next====&lt;br /&gt;
&lt;br /&gt;
수신자의 다음 항목을 응답하라. 스트림의 끝에 도달하면 nil을 리턴하라.&lt;br /&gt;
&lt;br /&gt;
====nextAvailable: anInteger into: aCollection startingAt: pos====&lt;br /&gt;
&lt;br /&gt;
수신자로부터 anInteger 객체를 aCollection으로 위치시키되, 컬렉션 내의 pos 위치부터 시작하고 더 이상 이용할 수 있는 데이터가 없다면 중단한다.&lt;br /&gt;
&lt;br /&gt;
====nextAvailable: anInteger putAllOn: aStream====&lt;br /&gt;
&lt;br /&gt;
수신자로부터 anInteger 객체를 aStream으로 복사하되, 더 이상 이용할 수 있는 데이터가 없다면 중단하라.&lt;br /&gt;
&lt;br /&gt;
====peek====&lt;br /&gt;
&lt;br /&gt;
포인터를 이동시키지 않고 스트림의 다음 요소를 리턴한다. 스트림의 끝에 도달하면 nil을 리턴한다.&lt;br /&gt;
&lt;br /&gt;
====peekFor: anObject====&lt;br /&gt;
&lt;br /&gt;
스트림으로부터 다음 요소가 anObject와 같은 경우 true를 리턴하고 gobble하고, 다음 요소가 anObject와 같지 않다면 false를 리턴하고 다음 요소를 gobble하지 않는다.&lt;br /&gt;
&lt;br /&gt;
====readStream====&lt;br /&gt;
&lt;br /&gt;
수신자와 같은 내용에 ReadStream을 응답하라.&lt;br /&gt;
&lt;br /&gt;
====reverseContents====&lt;br /&gt;
&lt;br /&gt;
마지막 요소까지 포함해 스트림이 접근하는 것과 같은 타입의 컬렉션을 리턴하되 역순으로 리턴한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 클래스 타입 메서드===&lt;br /&gt;
&lt;br /&gt;
====isExternalStream====&lt;br /&gt;
&lt;br /&gt;
우리는 이미지에 상주하는 컬렉션을 상대로 스트리밍하므로 false를 응답하라.&lt;br /&gt;
&lt;br /&gt;
====species====&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;upTo: 등의 메서드가 리턴하는 컬렉션의 타입을 리턴하되, 이러한 컬렉션은 #select: 와 같은 메서드가 있는 컬렉션이 리턴하는 것과 같은 유형이다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 컴파일하기===&lt;br /&gt;
&lt;br /&gt;
====name====&lt;br /&gt;
&lt;br /&gt;
수신자가 스트리밍하는 대상을 나타내는 문자열을 응답하라.&lt;br /&gt;
&lt;br /&gt;
====segmentFrom: startPos to: endPos====&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;asString을 전송하면 수신자에게 &amp;#039;copyFrom: startPos to: endPos&amp;#039;를 전송하는 결과를 야기하게 될 객체를 응답하라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 위치지정하기===&lt;br /&gt;
&lt;br /&gt;
====basicPosition: anInteger====&lt;br /&gt;
&lt;br /&gt;
스트림 포인터를 anInteger 번째 객체로 이동시켜라.&lt;br /&gt;
&lt;br /&gt;
====isPositionable====&lt;br /&gt;
&lt;br /&gt;
스트림이 #skip: 을 이용해 뒤로 이동을 지원할 경우 true를 응답하라.&lt;br /&gt;
&lt;br /&gt;
====position====&lt;br /&gt;
&lt;br /&gt;
스트림 포인터의 현재 값을 응답하라.&lt;br /&gt;
&lt;br /&gt;
====position: anInteger====&lt;br /&gt;
&lt;br /&gt;
스트림 포인터를 anIntegr번째 객체로 이동시켜라.&lt;br /&gt;
&lt;br /&gt;
====reset====&lt;br /&gt;
&lt;br /&gt;
스트림을 그 첫 번재 요소로 다시 이동시켜라. 쓰기만 가능한 스트림의 경우 스트림이 그 곳에서 절단된다(truncated).&lt;br /&gt;
&lt;br /&gt;
====setToEnd====&lt;br /&gt;
&lt;br /&gt;
현재 위치를 스트림 끝으로 이동시켜라.&lt;br /&gt;
&lt;br /&gt;
====size====&lt;br /&gt;
&lt;br /&gt;
우리가 스트리밍 중인 데이터의 크기를 응답하라.&lt;br /&gt;
&lt;br /&gt;
====skip: anInteger====&lt;br /&gt;
&lt;br /&gt;
현재 위치를 전방향이든 후방향이든 anInteger place만큼 이동시켜라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 아직 분류되지 않음===&lt;br /&gt;
&lt;br /&gt;
====nextPutAllOn: aStream====&lt;br /&gt;
&lt;br /&gt;
수신자 내의 모든 객체를 aStream에 작성하라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 검사하기===&lt;br /&gt;
&lt;br /&gt;
====atEnd====&lt;br /&gt;
&lt;br /&gt;
스트림 내의 모든 객체들이 끝에 도달했는지 응답하라.&lt;br /&gt;
&lt;br /&gt;
====basicAtEnd====&lt;br /&gt;
&lt;br /&gt;
스트림 내의 객체들이 끝에 도달했는지 응답하라. 해당 메서드는 오버라이드되어선 안 된다.&lt;br /&gt;
&lt;br /&gt;
====isEmpty====&lt;br /&gt;
&lt;br /&gt;
스트림이 객체를 전혀 갖고 있지 않은지를 응답하라.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===PositionableStream: 절단하기(truncating)===&lt;br /&gt;
&lt;br /&gt;
====truncate====&lt;br /&gt;
&lt;br /&gt;
수신자를 현재 위치로 절단하라 - 스트림 작성에만 유효.&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>