/// <summary>
        /// Use the given writer on the given syntax node and assert that the resulting output syntax
        /// node will match a list of item of the given type parameter.
        /// </summary>
        /// <typeparam name="T">The resulting output syntax node type.</typeparam>
        /// <param name="nodeWriter">The writer to use to generate the output.</param>
        /// <param name="implPatternNode">The implementation pattern used as input to the writer.</param>
        /// <returns>The resulting output syntax nodes.</returns>
        public static IReadOnlyList <T> WriteAndAssertMultiMemberOfType <T>(INodeWriter nodeWriter, SyntaxNode implPatternNode)
            where T : SyntaxNode
        {
            var output = new StringBuilder();

            nodeWriter.Write(implPatternNode, s => output.Append(s));

            return(AssertMultiMemberOfType <T>(output));
        }