code: func ParseAbsResourceStr(str string) (AbsResource, tfdiags.Diagnostics) {
  	var diags tfdiags.Diagnostics
  
  	traversal, parseDiags := hclsyntax.ParseTraversalAbs([]byte(str), "", hcl.Pos{Line: 1, Column: 1})
  	diags = diags.Append(parseDiags)
  	if parseDiags.HasErrors() {
  		return AbsResource{}, diags
  	}
  
  	addr, addrDiags := ParseAbsResource(traversal)
  	diags = diags.Append(addrDiags)
  	return addr, diags
  }
docs: // ParseAbsResourceStr is a helper wrapper around ParseAbsResource that takes a
  // string and parses it with the HCL native syntax traversal parser before
  // interpreting it.
  //
  // Error diagnostics are returned if either the parsing fails or the analysis
  // of the traversal fails. There is no way for the caller to distinguish the
  // two kinds of diagnostics programmatically. If error diagnostics are returned
  // the returned address may be incomplete.
  //
  // Since this function has no context about the source of the given string,
  // any returned diagnostics will not have meaningful source location
  // information.