rust-analyzer changelog #347
rust-analyzer 변경 기록 #347
rust-analyzer #347은 자동 완성, 의미 토큰 캐시, 상수 평가와 비동기 클로저 처리를 개선합니다. 트레이트 메서드에 구현 정보를 표시하고, `#[cfg]` 값과 속성 자동 완성의 중복·누락 문제도 수정합니다.
- 주제
AI 요약
이번 변경 기록은 rust-analyzer의 자동 완성과 Rust 코드 분석 오류 수정을 다룹니다. 트레이트 자동 완성에서는 필수 항목을 우선 표시하고, 새로 고침 뒤에도 의미 토큰 캐시를 유지합니다. 미지정 타입을 자동 완성에서 우선하지 않도록 조정하고, 타입 별칭과 상수 자동 완성에선 타입 일치 여부를 확인합니다.
분석 및 오류 수정
단일 변형 열거형(enum)의 상수 평가에서 형 변환 오류를 수정합니다. 값을 가질 수 없는 열거형(uninhabited enum)의 판별값(discriminant)을 읽으면 정의되지 않은 동작(undefined behavior)을 보고합니다. 고차 수명(high-ranked trait bounds, HRTB)을 쓰는 비동기 클로저에서 발생하던 패닉도 해결합니다. 안전 함수에서 안전하지 않은 함수로의 강제 변환(coercion) 오류도 수정합니다.
자동 완성과 표시 개선
메서드 위에 마우스를 올리면 해당 메서드를 구현하는 트레이트를 표시합니다. #[cfg(false)]와 #[cfg] 문자열 값을 자동 완성하고, 자동 완성 결과에서 #[derive]와 #[test] 중복 및 속성 괄호 중복을 없앱니다.
원문: rust-analyzer / 번역·요약: Trawling