ptx_parser/parser/instruction/
mbarrier_pending_count.rs1#![allow(unused)]
6
7use crate::lexer::PtxToken;
8use crate::parser::{PtxParseError, PtxParser, PtxTokenStream, Span};
9use crate::r#type::common::*;
10
11pub mod section_0 {
12 use super::*;
13 use crate::r#type::instruction::mbarrier_pending_count::section_0::*;
14
15 impl PtxParser for MbarrierPendingCountB64 {
16 fn parse(stream: &mut PtxTokenStream) -> Result<Self, PtxParseError> {
17 stream.expect_string("mbarrier")?;
18 stream.expect_string(".pending_count")?;
19 let pending_count = ();
20 stream.expect_complete()?;
21 stream.expect_string(".b64")?;
22 let b64 = ();
23 stream.expect_complete()?;
24 let count = GeneralOperand::parse(stream)?;
25 stream.expect_complete()?;
26 stream.expect(&PtxToken::Comma)?;
27 let state = GeneralOperand::parse(stream)?;
28 stream.expect_complete()?;
29 stream.expect_complete()?;
30 stream.expect(&PtxToken::Semicolon)?;
31 Ok(MbarrierPendingCountB64 {
32 pending_count,
33 b64,
34 count,
35 state,
36 })
37 }
38 }
39}