Trait Tuple
Deprecated since 8.0.0: `Parser` is directly implemented for tuples
pub trait Tuple<I, O, E>
Helper trait for the tuple combinator.
This trait is implemented for tuples of parsers of up to 21 elements.
Required Methods
fn parse_tuple(&mut self, input: I) -> IResult<I, O, E>Parses the input and returns a tuple of results of each parser.
Implementors
impl<I, E: ParseError<I>> Tuple<I, (), E> for ()impl<Input, Output, Error: ParseError<Input>, F: Parser<Input, Output = Output, Error = Error>> Tuple<Input, (Output,), Error> for (F,)impl<Input: Clone, A, B, C, D, E, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>> Tuple<Input, (A, B, C, D, E), Error> for (FnA, FnB, FnC, FnD, FnE)impl<Input: Clone, A, B, C, D, E, F, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>> Tuple<Input, (A, B, C, D, E, F), Error> for (FnA, FnB, FnC, FnD, FnE, FnF)impl<Input: Clone, A, B, C, D, E, F, G, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG)impl<Input: Clone, A, B, C, D, E, F, G, H, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH)impl<Input: Clone, A, B, C, D, E, F, G, H, I, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>, FnS: Parser<Input, Output = S, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>, FnS: Parser<Input, Output = S, Error = Error>, FnT: Parser<Input, Output = T, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS, FnT)impl<Input: Clone, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>, FnE: Parser<Input, Output = E, Error = Error>, FnF: Parser<Input, Output = F, Error = Error>, FnG: Parser<Input, Output = G, Error = Error>, FnH: Parser<Input, Output = H, Error = Error>, FnI: Parser<Input, Output = I, Error = Error>, FnJ: Parser<Input, Output = J, Error = Error>, FnK: Parser<Input, Output = K, Error = Error>, FnL: Parser<Input, Output = L, Error = Error>, FnM: Parser<Input, Output = M, Error = Error>, FnN: Parser<Input, Output = N, Error = Error>, FnO: Parser<Input, Output = O, Error = Error>, FnP: Parser<Input, Output = P, Error = Error>, FnQ: Parser<Input, Output = Q, Error = Error>, FnR: Parser<Input, Output = R, Error = Error>, FnS: Parser<Input, Output = S, Error = Error>, FnT: Parser<Input, Output = T, Error = Error>, FnU: Parser<Input, Output = U, Error = Error>> Tuple<Input, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U), Error> for (FnA, FnB, FnC, FnD, FnE, FnF, FnG, FnH, FnI, FnJ, FnK, FnL, FnM, FnN, FnO, FnP, FnQ, FnR, FnS, FnT, FnU)impl<Input: Clone, A, B, C, D, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>, FnD: Parser<Input, Output = D, Error = Error>> Tuple<Input, (A, B, C, D), Error> for (FnA, FnB, FnC, FnD)impl<Input: Clone, A, B, C, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>, FnC: Parser<Input, Output = C, Error = Error>> Tuple<Input, (A, B, C), Error> for (FnA, FnB, FnC)impl<Input: Clone, A, B, Error: ParseError<Input>, FnA: Parser<Input, Output = A, Error = Error>, FnB: Parser<Input, Output = B, Error = Error>> Tuple<Input, (A, B), Error> for (FnA, FnB)