타입 리플렉션

타입 리플렉션 (Type reflection)

Crystal은 타입 리플렉션(type reflection), 캐스팅, 인트로스펙션(introspection)을 위한 기본적인 메서드들을 제공해요.

출처: Crystal 공식 문서

본문

타입 리플렉션이란 프로그램이 실행 중에 자신의 타입 정보를 조회하는 기능을 말해요. Crystal에서는 이와 관련된 기본 도구들을 제공하는데, 구체적으로는 타입을 알아내는 typeof, 타입을 확인하는 is_a?, 두 값이 같은 객체인지 확인하는 same? 같은 것들이 있어요.

  • typeof(expression): 표현식의 타입을 얻어요
  • is_a?(Type): 값이 특정 타입인지 검사해요
  • same?(other): 두 값이 같은 객체를 가리키는지 확인해요

더 알아보기

  • sizeof, instance_sizeof: 타입의 크기를 다루는 표현식
  • instance_alignof: 타입의 정렬을 다루는 표현식