//*
        // * Checks if this pattern would match an empty stream of
        // * tokens. This method checks if any one of the production
        // * pattern alternatives would match the empty token stream.
        // *
        // * @return true if at least one alternative match no tokens, or
        // * false otherwise
        //

        public bool IsMatchingEmpty()
        {
            ProductionPatternAlternative alt = default(ProductionPatternAlternative);

            for (int i = 0; i <= alternatives.Count - 1; i++)
            {
                alt = (ProductionPatternAlternative)alternatives[i];
                if (alt.IsMatchingEmpty())
                {
                    return(true);
                }
            }
            return(false);
        }