1
私は改行で終わるか、一度消費された入力の終わりに達するnomを使って文字列を解析しようとしています。私は、次のコードはコンパイルするので、上記のコードをコンパイルする必要があることを信じるように導かれていnomを使った行末またはファイルの終りの一致
error[E0282]: unable to infer enough type information about `E`
--> src/lib.rs:181:1
|
181 | named!(am_implied <AddressingMode>,
|^cannot infer type for `E`
|
= note: type annotations or generic parameter binding required
:これは、次のメッセージで失敗し
named!(am_implied <AddressingMode>,
do_parse!(
opt!(space) >>
alt!(
line_ending |
eof!()
) >>
(AddressingMode::Implied)
)
);
を:私はそれをコンパイルする必要があるように思える次のコードを持っています:
named!(am_implied <AddressingMode>,
do_parse!(
opt!(space) >>
line_ending >>
eof!() >>
(AddressingMode::Implied)
)
);
は、私は、これはline_ending
とeof!
パーサはalt!
P内で使用されていないときに動作理由として混乱していますarser、しかし失敗したとき。 line_ending
またはeof!
で一致する正しい解決方法を知りたいです。