nom_kconfig/attribute/transitional.rs
1use nom::{bytes::complete::tag, combinator::value, IResult, Parser};
2
3use crate::{util::ws, KconfigInput};
4
5/// A transitional symbol meansit should be processed during configuration but omitted from newly written .config files. Transitional symbols are useful for backward compatibility during config option migrations - they allow olddefconfig to process existing .config files while ensuring the old option doesn't appear in new configurations.
6///
7/// # Example
8/// ```
9/// use nom_kconfig::{assert_parsing_eq, attribute::parse_transitional};
10///
11/// assert_parsing_eq!(parse_transitional, "transitional", Ok(("", ())))
12/// ```
13pub fn parse_transitional(input: KconfigInput) -> IResult<KconfigInput, ()> {
14 value((), ws(tag("transitional"))).parse(input)
15}