not

그대로 넘길 수 있는 함수 형태의 불리언 부정입니다.

bool not(bool a) => !a;

강의

not이 하는 일은 !a와 똑같습니다 — 다만 그것을 일급 함수로 제공하므로, (b) => !b를 직접 쓰는 대신 bool Function(bool)이 필요한 자리에 그대로 넘길 수 있습니다. FxTS의 not은 타입을 가리지 않고 JavaScript의 "truthy" 값에 동작하지만, Dart에는 암묵적 truthiness가 없으므로 Dart 포팅판은 실제 bool만 받습니다.

시그니처가 bool -> bool이기 때문에, 원소 타입이 이미 bool인 곳에서는 not 자체가 술어 역할도 합니다 — 데모 2의 some/every를 보세요. 다른 타입에 대한 임의의 술어를 뒤집으려면 negate를 쓰세요.

데모 1 · 기본

데모 2 · 불리언에 대한 술어로 쓰기

not은 그 자체가 bool Function(bool)이므로, 따로 감싸지 않고 some/every에 바로 꽂아 넣을 수 있습니다.

직접 해 보기

연습: not으로 "완료" 플래그 목록에서 "아직 대기 중" 플래그 목록을 만들어 보세요.

관련 항목: negate — bool 하나가 아니라 술어 함수 전체를 뒤집기 · some / every — 위에서 not과 함께 쓴 함수들 · when — 조건부 변환 · unless — 조건이 반대인 when의 짝