package python import "fmt" // Provides code for a method which will be placed in the program preamble if deemed // necessary. Because many tasks in Go such as reading a file require extensive error // handling, it is much prettier to encapsulate that error handling boilerplate as its // own function in the preamble. func getHelperMethodIfNeeded(functionName string, indent string) (string, bool) { switch functionName { case "filebase64sha256": return `def computeFilebase64sha256(path): fileData = open(path).read().encode() hashedData = hashlib.sha256(fileData.encode()).digest() return base64.b64encode(hashedData).decode()`, true case "notImplemented": return fmt.Sprintf(` %sdef not_implemented(msg): %s raise NotImplementedError(msg)`, indent, indent), true case "singleOrNone": return fmt.Sprintf( `%sdef single_or_none(elements): %s if len(elements) != 1: %s raise Exception("single_or_none expected input list to have a single element") %s return elements[0] `, indent, indent, indent, indent), true default: return "", false } }