6.3.1 Haxe 표준 라이브러리의 정적 확장

6.3.1 Haxe 표준 라이브러리의 정적 확장

Haxe 표준 라이브러리의 여러 클래스는 정적 확장 사용에 적합합니다. 다음 예제는 StringTools의 사용을 보여줍니다:

using StringTools;

class Main {
  static public function main() {
    "adc".replace("d", "b");
  }
}

String은 그 자체로 replace 기능이 없지만, using StringTools 정적 확장이 하나를 제공합니다. 평소처럼 JavaScript 출력이 변환을 잘 보여줍니다:

Main.main = function() {
    StringTools.replace("adc","d","b");
}

Haxe 표준 라이브러리의 다음 클래스들은 정적 확장으로 사용되도록 설계되었어요:

  • StringTools: 문자열에 대한 확장 기능(replace, trim 등)을 제공한다.
  • Lambda: iterable에 대한 함수형 메서드를 제공한다.
  • haxe.EnumTools: enum과 그 인스턴스에 대한 타입 정보 기능을 제공한다.
  • haxe.macro.Tools: 매크로 작업을 위한 다양한 확장을 제공한다(Tools 참조).

추가 정보: "using" using — 언어에 using 키워드가 추가된 이후, 특정 문제(예: 모호성)에 대해 이야기할 때 "using using"이라는 말을 쓰는 것이 흔해졌습니다.

출처: In the Haxe Standard Library

본문

표준 라이브러리의 StringTools, Lambda, haxe.EnumTools, haxe.macro.Tools 클래스는 정적 확장으로 사용되도록 설계되었어요. using StringTools; 후에는 "adc".replace("d", "b")처럼 문자열 기능을 확장 호출로 사용할 수 있습니다.

더 알아보기