code: public static boolean isDesignatedConstructor(MethodDeclaration node) {
      if (!node.isConstructor()) {
        return false;
      }
      Block body = node.getBody();
      if (body == null) {
        return false;
      }
      List<Statement> stmts = body.getStatements();
      return (stmts.isEmpty() || !(stmts.get(0) instanceof ConstructorInvocation));
    }
docs: Returns true if this is a constructor that doesn't call "this(...)".  This constructors are
  skipped so initializers aren't run more than once per instance creation.