Raku의 before — 앞선 값인지 비교하는 연산자

Raku의 before — 앞선 값인지 비교하는 연산자

두 값 중 어느 쪽이 '앞서는지'(더 작은지)를 물어볼 일이 있어요. before 연산자가 그 비교를 담당해요. cmp와 같은 비교 의미론을 쓰면서, 첫 번째 인자가 두 번째보다 작으면 True를 돌려줘요. 순서 비교가 가능한 타입이라면 숫자든 문자열이든 버전이든 쓸 수 있죠.

multi infix:<before>(Any,       Any)
multi infix:<before>(Real:D,    Real:D)
multi infix:<before>(Str:D,     Str:D)
multi infix:<before>(Version:D, Version:D)

Infix before (본문)

infix:<before>는 일반적인(제네릭) 순서 비교 연산자예요. cmp와 같은 의미론을 사용해서, 첫 번째 인자가 두 번째보다 작으면 True를, 아니면 False를 돌려줘요. Real, Str, Version처럼 cmp로 비교 가능한 타입들이 대상이에요.

StrDistance의 before (메서드)

이건 사실 메서드라기보다 클래스 속성(attribute)인데, 메서드처럼 부르면 변환(transformation) 이전의 문자열을 돌려줘요.

say $str-dist.before; # OUTPUT: «fold␤»

출처: Raku 공식 문서 — before