org.codehaus.groovy.ast.AnnotationNode.getMember()方法的使用及代码示例

x33g5p2x  于2022-01-16 转载在 其他  
字(8.6k)|赞(0)|评价(0)|浏览(94)

本文整理了Java中org.codehaus.groovy.ast.AnnotationNode.getMember()方法的一些代码示例,展示了AnnotationNode.getMember()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AnnotationNode.getMember()方法的具体详情如下:
包路径:org.codehaus.groovy.ast.AnnotationNode
类名称:AnnotationNode
方法名:getMember

AnnotationNode.getMember介绍

暂无

代码示例

代码示例来源:origin: org.codehaus.groovy/groovy

private static void mergeParameters(AnnotationNode to, AnnotationNode from) {
  for (String name : from.getMembers().keySet()) {
    if (to.getMember(name) == null) {
      to.setMember(name, from.getMember(name));
    }
  }
}

代码示例来源:origin: org.codehaus.groovy/groovy

private void checkForClassLoader(AnnotationNode node) {
  Object val = node.getMember("systemClassLoader");
  if (!(val instanceof ConstantExpression)) return;
  Object systemClassLoaderObject = ((ConstantExpression)val).getValue();
  if (!(systemClassLoaderObject instanceof Boolean)) return;
  Boolean systemClassLoader = (Boolean) systemClassLoaderObject;
  if (systemClassLoader) loader = ClassLoader.getSystemClassLoader();
}

代码示例来源:origin: org.codehaus.groovy/groovy

private void checkForAutoDownload(AnnotationNode node) {
  Object val = node.getMember(AUTO_DOWNLOAD_SETTING);
  if (!(val instanceof ConstantExpression)) return;
  Object autoDownloadValue = ((ConstantExpression)val).getValue();
  if (!(autoDownloadValue instanceof Boolean)) return;
  autoDownload = (Boolean) autoDownloadValue;
}

代码示例来源:origin: org.codehaus.groovy/groovy

private Expression serialize(AnnotationNode an) {
    MapExpression map = new MapExpression();
    for (String key : an.getMembers().keySet()) {
      map.addMapEntryExpression(new ConstantExpression(key), serialize(an.getMember(key)));
    }
    List<Expression> l = new ArrayList<Expression>(2);
    l.add(new ClassExpression(an.getClassNode()));
    l.add(map);
    return new ArrayExpression(ClassHelper.OBJECT_TYPE, l);
  }
}

代码示例来源:origin: org.codehaus.groovy/groovy

private void checkForDisableChecksums(AnnotationNode node) {
  Object val = node.getMember(DISABLE_CHECKSUMS_SETTING);
  if (!(val instanceof ConstantExpression)) return;
  Object disableChecksumsValue = ((ConstantExpression)val).getValue();
  if (!(disableChecksumsValue instanceof Boolean)) return;
  disableChecksums = (Boolean) disableChecksumsValue;
}

代码示例来源:origin: org.codehaus.groovy/groovy

public Object getMemberValue(AnnotationNode node, String name) {
  final Expression member = node.getMember(name);
  if (member instanceof ConstantExpression) return ((ConstantExpression) member).getValue();
  return null;
}

代码示例来源:origin: org.codehaus.groovy/groovy

private void checkForInitContextClassLoader(AnnotationNode node) {
  Object val = node.getMember("initContextClassLoader");
  if (!(val instanceof ConstantExpression)) return;
  Object initContextClassLoaderObject = ((ConstantExpression)val).getValue();
  if (!(initContextClassLoaderObject instanceof Boolean)) return;
  initContextClassLoader = (Boolean) initContextClassLoaderObject;
}

代码示例来源:origin: org.codehaus.groovy/groovy

public boolean memberHasValue(AnnotationNode node, String name, Object value) {
  final Expression member = node.getMember(name);
  return member instanceof ConstantExpression && ((ConstantExpression) member).getValue().equals(value);
}

代码示例来源:origin: org.codehaus.groovy/groovy

@Deprecated
public List<ClassNode> getClassList(AnnotationNode anno, String name) {
  List<ClassNode> list = new ArrayList<ClassNode>();
  Expression expr = anno.getMember(name);
  if (expr instanceof ListExpression) {
    final ListExpression listExpression = (ListExpression) expr;
    list = getTypeList(listExpression);
  } else if (expr instanceof ClassExpression) {
    ClassNode cn = expr.getType();
    if (cn != null) list.add(cn);
  }
  return list;
}

代码示例来源:origin: org.codehaus.groovy/groovy

public static String getMemberStringValue(AnnotationNode node, String name, String defaultValue) {
  final Expression member = node.getMember(name);
  if (member instanceof ConstantExpression) {
    Object result = ((ConstantExpression) member).getValue();
    if (result instanceof String && isUndefined((String) result)) result = null;
    if (result != null) return result.toString();
  }
  return defaultValue;
}

代码示例来源:origin: org.codehaus.groovy/groovy

private static String lookupLogFieldName(AnnotationNode logAnnotation) {
  Expression member = logAnnotation.getMember("value");
  if (member != null && member.getText() != null) {
    return member.getText();
  } else {
    return "log";
  }
}

代码示例来源:origin: org.codehaus.groovy/groovy

private static String lookupCategoryName(AnnotationNode logAnnotation) {
  Expression member = logAnnotation.getMember("category");
  if (member != null && member.getText() != null) {
    return member.getText();
  }
  return DEFAULT_CATEGORY_NAME;
}

代码示例来源:origin: org.codehaus.groovy/groovy

private static void addGrabResolverAsStaticInitIfNeeded(ClassNode grapeClassNode, AnnotationNode node,
                         List<Statement> grabResolverInitializers, Map<String, Object> grabResolverMap) {
  if ((node.getMember("initClass") == null)
    || (node.getMember("initClass") == ConstantExpression.TRUE))
  {
    MapExpression resolverArgs = new MapExpression();
    for (Map.Entry<String, Object> next : grabResolverMap.entrySet()) {
      resolverArgs.addMapEntryExpression(constX(next.getKey()), constX(next.getValue()));
    }
    grabResolverInitializers.add(stmt(callX(grapeClassNode, "addResolver", args(resolverArgs))));
  }
}

代码示例来源:origin: org.codehaus.groovy/groovy

@Deprecated
public static List<String> getMemberList(AnnotationNode anno, String name) {
  List<String> list;
  Expression expr = anno.getMember(name);
  if (expr instanceof ListExpression) {
    final ListExpression listExpression = (ListExpression) expr;
    list = getValueStringList(listExpression);
  } else {
    list = tokenize(getMemberStringValue(anno, name));
  }
  return list;
}

代码示例来源:origin: groovy/groovy-core

public void visit(ASTNode[] nodes, final SourceUnit source) {
    if (nodes.length != 2 || !(nodes[0] instanceof AnnotationNode) || !(nodes[1] instanceof AnnotatedNode)) {
      throw new RuntimeException("Internal error: expecting [AnnotationNode, AnnotatedNode] but got: " + Arrays.asList(nodes));
    }
    AnnotatedNode parent = (AnnotatedNode) nodes[1];
    File f = new File("temp/log.txt");
    try {
      ResourceGroovyMethods.append(f, parent.getClass().getSimpleName() + " " +
          parent.getAnnotations().get(0).getMember("value").getText() + " ");
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

代码示例来源:origin: org.codehaus.groovy/groovy

private static AutoCloneStyle getStyle(AnnotationNode node, String name) {
  final Expression member = node.getMember(name);
  if (member instanceof PropertyExpression) {
    PropertyExpression prop = (PropertyExpression) member;
    Expression oe = prop.getObjectExpression();
    if (oe instanceof ClassExpression) {
      ClassExpression ce = (ClassExpression) oe;
      if (ce.getType().getName().equals("groovy.transform.AutoCloneStyle")) {
        return AutoCloneStyle.valueOf(prop.getPropertyAsString());
      }
    }
  }
  return null;
}

代码示例来源:origin: org.codehaus.groovy/groovy

private static AnnotationCollectorMode getMode(AnnotationNode node) {
  final Expression member = node.getMember("mode");
  if (member instanceof PropertyExpression) {
    PropertyExpression prop = (PropertyExpression) member;
    Expression oe = prop.getObjectExpression();
    if (oe instanceof ClassExpression) {
      ClassExpression ce = (ClassExpression) oe;
      if (ce.getType().getName().equals("groovy.transform.AnnotationCollectorMode")) {
        return AnnotationCollectorMode.valueOf(prop.getPropertyAsString());
      }
    }
  }
  return null;
}

代码示例来源:origin: spockframework/spock

@Override
@SuppressWarnings("unchecked")
public void visitAnnotations(AnnotatedNode node) {
 for (AnnotationNode an : node.getAnnotations()) {
  ClassNode cn = an.getClassNode();
  // this comparison should be good enough, and also works in phase conversion
  if (cn.getNameWithoutPackage().equals(Inspect.class.getSimpleName())) {
   ConstantExpression name = (ConstantExpression)an.getMember("value");
   if (name == null || !(name.getValue() instanceof String))
    throw new AstInspectorException("@Inspect must have a String argument");
   addNode(markedNodes, (String)name.getValue(), node);
   break;
  }
 }
 super.visitAnnotations(node);
}

代码示例来源:origin: org.codehaus.groovy/groovy

public static List<String> getMemberStringList(AnnotationNode anno, String name) {
  Expression expr = anno.getMember(name);
  if (expr == null) {
    return null;
  }
  if (expr instanceof ListExpression) {
    final ListExpression listExpression = (ListExpression) expr;
    if (isUndefinedMarkerList(listExpression)) {
      return null;
    }
    return getValueStringList(listExpression);
  }
  return tokenize(getMemberStringValue(anno, name));
}

代码示例来源:origin: org.codehaus.groovy/groovy

private void changeBaseScriptTypeFromPackageOrImport(final SourceUnit source, final AnnotatedNode parent, final AnnotationNode node) {
  Expression value = node.getMember("value");
  if (!(value instanceof ClassExpression)) {
    addError("Annotation " + MY_TYPE_NAME + " member 'value' should be a class literal.", value);
    return;
  }
  List<ClassNode> classes = source.getAST().getClasses();
  for (ClassNode classNode : classes) {
    if (classNode.isScriptBody()) {
      changeBaseScriptType(parent, classNode, value.getType());
    }
  }
}

相关文章