コード例 #1
0
 @Nonnull
 private CSSExpression _createExpression(@Nonnull final CSSNode aNode) {
   _expectNodeType(aNode, ECSSNodeType.EXPR);
   final CSSExpression ret = new CSSExpression();
   ret.setSourceLocation(aNode.getSourceLocation());
   for (final CSSNode aChildNode : aNode) {
     if (ECSSNodeType.EXPRTERM.isNode(aChildNode, m_eVersion))
       ret.addMember(_createExpressionTerm(aChildNode));
     else if (ECSSNodeType.EXPROPERATOR.isNode(aChildNode, m_eVersion)) {
       final String sText = aChildNode.getText();
       final ECSSExpressionOperator eOp = ECSSExpressionOperator.getFromNameOrNull(sText);
       if (eOp == null) s_aLogger.error("Failed to parse expression operator '" + sText + "'");
       else ret.addMember(eOp);
     } else {
       s_aLogger.error(
           "Unsupported child of "
               + ECSSNodeType.getNodeName(aNode, m_eVersion)
               + ": "
               + ECSSNodeType.getNodeName(aChildNode, m_eVersion));
     }
   }
   return ret;
 }