code: public Symbol resolveIdent(String name) {
          if (name.equals(""))
              return syms.errSymbol;
          JavaFileObject prev = log.useSource(null);
          try {
              JCExpression tree = null;
              for (String s : name.split("\\.", -1)) {
                  if (!SourceVersion.isIdentifier(s)) // TODO: check for keywords
                      return syms.errSymbol;
                  tree = (tree == null) ? make.Ident(names.fromString(s))
                                        : make.Select(tree, names.fromString(s));
              }
              JCCompilationUnit toplevel =
                  make.TopLevel(List.<JCTree.JCAnnotation>nil(), null, List.<JCTree>nil());
              toplevel.packge = syms.unnamedPackage;
              return attr.attribIdent(tree, toplevel);
          } finally {
              log.useSource(prev);
          }
      }
docs: Resolve an identifier.
  @param name      The identifier to resolve