Branch: Tag:

2018-02-05

2018-02-05 17:14:07 by Henrik Grubbström (Grubba) <grubba@grubba.org>

String.Buffer: Moved implementation.

Moves implementation of String.Buffer from builtin.cmod to
string_builder.cmod.

Adds initialization of the module to happen before that of cpp.
This will allow cpp.cmod to rely on String.Buffer to exist at
compile time.

265:    "Search.Database.MySQL": "predef::Search.Utils.ProfileEntry.get_database":1,    "Search.Filer.Base": "predef::Search.get_filter":1,    "Sequence": "predef::Crypto.DSA.State.pkcs_algorithm_identifier":1, "predef::Crypto.DSA.State.pkcs_public_key":1, "predef::Crypto.DSA.State.pkcs_signature_algorithm_id":1, "predef::Crypto.ECC.Curve.ECDSA.pkcs_algorithm_identifier":1, "predef::Crypto.ECC.Curve.ECDSA.pkcs_public_key":1, "predef::Crypto.ECC.Curve.ECDSA.pkcs_signature_algorithm_id":1, "predef::Crypto.ECC.Curve.pkcs_algorithm_identifier":1, "predef::Crypto.ECC.Curve25519.EdDSA.pkcs_algorithm_identifier":1, "predef::Crypto.ECC.Curve25519.EdDSA.pkcs_public_key":1, "predef::Crypto.ECC.Curve25519.EdDSA.pkcs_signature_algorithm_id":1, "predef::Crypto.ECC.Curve25519.pkcs_algorithm_identifier":1, "predef::Crypto.RSA.PKCS1_5State.pkcs_public_key":1, "predef::Crypto.RSA.PKCS1_5State.pkcs_signature_algorithm_id":1, "predef::Crypto.RSA.PSSState.pkcs_signature_algorithm_id":1, "predef::__builtin.Nettle.Sign.pkcs_algorithm_identifier":1, "predef::__builtin.Nettle.Sign.pkcs_public_key":1, "predef::__builtin.Nettle.Sign.pkcs_signature_algorithm_id":1, +  "Serializable": "predef::Serializer.Encodeable":2,    "Serialization.deserialize()": "lfun::_deserialize":1,    "Serializer.Serializable": "lfun::_deserialize":1, "lfun::_serialize":1,    "Serializer.Serializable()->_deserialize()": "lfun::_deserialize":1,
299:    "Stdio.Port()->bind()": "7.8::SSL.sslport.bind":1,    "Stdio.Port()->listen_fd()": "7.8::SSL.sslport.listen_fd":1,    "Stdio.stdout.write()": "predef::Stdio":1, +  "String.Buffer": "predef::Gz.compress":1, "predef::Gz.deflate.deflate":1, "predef::Gz.inflate.inflate":1, "predef::Gz.uncompress":1, "predef::Nettle.Hash.hash":1, "predef::Stdio.Buffer":1, "predef::Stdio.Buffer.add":2, "predef::Stdio.Buffer.add_hstring":2, "predef::Stdio.Buffer.create":2, "predef::Tools.Standalone.autodoc_to_html.parse_text":1, "predef::__builtin.Nettle.Hash.hash":2,    "System.EPIPE": "7.8::SSL.sslfile":1, "7.8::SSL.sslfile.shutdown":1, "7.8::Stdio.File.set_read_callback":1, "predef::SSL.File":1, "predef::SSL.File.shutdown":1, "predef::Stdio.File.set_read_callback":1,    "System._FSEvents": "predef::System.FSEvents":1,    "System.set_file_atime": "predef::System.utime":1,
387:    "crypt_md5()": "predef::Crypto.MD5.crypt_hash":1, "predef::__builtin.Nettle.Hash.crypt_hash":2,    "crypt_password()": "predef::__builtin.Nettle.Hash.openssl_pbkdf":1, "predef::__builtin.Nettle.Hash.pbkdf1":1, "predef::__builtin.Nettle.Hash.pbkdf2":1,    "data": "predef::Git.Export.filemodify":1, "predef::Git.Export.notemodify":1, +  "deserialize()": "predef::Serializer":1,    "destruct()": "lfun::`==":1,    "digest()": "predef::Nettle.BlockCipher.CFB.State.crypt":1, "predef::Nettle.BlockCipher.CTR.State.crypt":1, "predef::Nettle.BlockCipher.OFB.State.crypt":1,    "dirname()": "cpp::":1,
528:    "master_file_stat()": "predef::MasterObject.master_read_file":1,    "master_get_dir()": "predef::MasterObject.master_read_file":1,    "mixed ": "predef::Image.Layer.set_misc_value":2, -  "mixed_void": "predef::Builtin._get_setter":1, +     "mtime": "predef::Search.Database.Base.set_lastmodified":1,    "normalized": "predef::GL.GLSLUtils.VertexBuffer.add_attribute":1,    "object ": "predef::Image.AVS.decode":1, "predef::Image.BMP.decode":2, "predef::Image.Color.Color.grey":2, "predef::Image.Color.Color.light":5, "predef::Image.Color.guess":1, "predef::Image.Color.rgb":5, "predef::Image.Colortable.`+":1, "predef::Image.Colortable.`-":1, "predef::Image.Colortable.create":5, "predef::Image.Colortable.cubicles":3, "predef::Image.Colortable.floyd_steinberg":2, "predef::Image.Colortable.full":1, "predef::Image.Colortable.image":1, "predef::Image.Colortable.map":6, "predef::Image.Colortable.nodither":1, "predef::Image.Colortable.ordered":5, "predef::Image.Colortable.randomcube":4, "predef::Image.Colortable.reduce":2, "predef::Image.Colortable.rigid":2, "predef::Image.Colortable.spacefactors":1, "predef::Image.GIF.decode":3, "predef::Image.GIF.decode_layers":4, "predef::Image.HRZ.decode":1, "predef::Image.ILBM.decode":3, "predef::Image.Image.`&":3, "predef::Image.Image.`*":4, "predef::Image.Image.`+":3, "predef::Image.Image.`-":3, "predef::Image.Image.`/":6, "predef::Image.Image.`|":3, "predef::Image.Image.apply_curve":3, "predef::Image.Image.apply_matrix":3, "predef::Image.Image.apply_max":3, "predef::Image.Image.autocrop":5, "predef::Image.Image.bitscale":5, "predef::Image.Image.box":3, "predef::Image.Image.change_color":2, "predef::Image.Image.circle":3, "predef::Image.Image.clear":3, "predef::Image.Image.clone":4, "predef::Image.Image.color":4, "predef::Image.Image.copy":4, "predef::Image.Image.dct":1, "predef::Image.Image.distancesq":2, "predef::Image.Image.gamma":2, "predef::Image.Image.grey":2, "predef::Image.Image.grey_blur":1, "predef::Image.Image.invert":1, "predef::Image.Image.line":3, "predef::Image.Image.match":4, "predef::Image.Image.mirrorx":1, "predef::Image.Image.mirrory":1, "predef::Image.Image.modify_by_intensity":1, "predef::Image.Image.orient":1, "predef::Image.Image.outline":10, "predef::Image.Image.paste":2, "predef::Image.Image.paste_alpha":2, "predef::Image.Image.paste_alpha_color":6, "predef::Image.Image.paste_mask":2, "predef::Image.Image.phaseh":4, "predef::Image.Image.polyfill":1, "predef::Image.Image.random":6, "predef::Image.Image.rgb_to_hsv":2, "predef::Image.Image.rgb_to_yuv":2, "predef::Image.Image.rotate":4, "predef::Image.Image.rotate_ccw":1, "predef::Image.Image.rotate_cw":1, "predef::Image.Image.scale":6, "predef::Image.Image.select_from":2, "predef::Image.Image.setcolor":2, "predef::Image.Image.setpixel":4, "predef::Image.Image.skewx":8, "predef::Image.Image.skewy":8, "predef::Image.Image.test":3, "predef::Image.Image.threshold":4, "predef::Image.Image.tuned_box":1, "predef::Image.Image.write_lsb_rgb":2, "predef::Image.Layer.autocrop":2, "predef::Image.Layer.clone":1, "predef::Image.Layer.crop":1, "predef::Image.Layer.set_alpha_value":1, "predef::Image.Layer.set_fill":4, "predef::Image.Layer.set_image":2, "predef::Image.Layer.set_mode":1, "predef::Image.Layer.set_offset":1, "predef::Image.Layer.set_tiled":1, "predef::Image.PCX.decode":1, "predef::Image.PNM.decode":1, "predef::Image.PVR.decode":2, "predef::Image.RAS.decode":1, "predef::Image.TGA._decode":1, "predef::Image.TGA.decode":1, "predef::Image.TIM.decode":2, "predef::Image.TTF.Face.`()":1, "predef::Image.TTF.Face.flush":1, "predef::Image.TTF.`()":2, "predef::Image.X.decode_pseudocolor":1, "predef::Image.X.decode_truecolor":2, "predef::Image.XBM._decode":2, "predef::Image.XBM.decode":1, "predef::Image.XCF.___decode":1, "predef::Image.XCF.__decode":1, "predef::Image.XCF.decode":1, "predef::Image.XFace.decode":2, "predef::Image.XFace.decode_header":2, "predef::Image.XWD.decode":1,
580:    "seek": "7.8::Stdio.FILE.line_iterator":1,    "seek()": "predef::Mysql.mysql.Result.fetch_row":1, "predef::Mysql.mysql.Result.low_seek":2,    "send_reply()": "predef::Protocols.DNS.server_base.handle_query":1, +  "serialize()": "predef::Serializer":1,    "server_*": "predef::__builtin.Nettle.Hash.SCRAM":1,    "set_backend": "7.8::Stdio.File.set_read_callback":2,    "set_buffer_mode": "predef::Stdio":2,
710:   "predef::ADT.Priority_queue.push": "elem"   "predef::ADT.Scheduler.get": "Consumers"   "predef::ADT.TreeScheduler": "Customer" - "predef::Builtin._get_setter": "mixed_void" +    "predef::Bz2": "\"___Bz2\""   "predef::Bz2.File": "Bz2::File"   "predef::Bz2.File.line_iterator": "Stdio.LineIterator"
1105:   "predef::Gz": "\"___Gz\""   "predef::Gz.File.line_iterator": "Stdio.LineIterator"   "predef::Gz._file.open": "FILTERED" "HUFFMAN_ONLY" - "predef::Gz.inflate.inflate": "Gz.decompress" + "predef::Gz.compress": "String.Buffer" + "predef::Gz.deflate.deflate": "String.Buffer" + "predef::Gz.inflate.inflate": "Gz.decompress" "String.Buffer" + "predef::Gz.uncompress": "String.Buffer"   "predef::HPack": "\"___HPack\""   "predef::HPack.Context": "static_headers"   "predef::HTTPAccept.Loop.create": "bool"
1393:   "predef::Nettle.DES3.State": "Cipher::State"   "predef::Nettle.ECC_Curve.Point._equal": "Curve"   "predef::Nettle.ECC_Curve.`==": "Curve" - "predef::Nettle.Hash.hash": "file" + "predef::Nettle.Hash.hash": "String.Buffer" "file"   "predef::Nettle.IDEA.State": "Cipher::State"   "predef::Nettle.SALSA20.State": "Cipher::State"   "predef::Nettle.SALSA20.State.set_iv": "set_decrypt_key()" "set_encrypt_key()"
1566:   "predef::Search.Query.execute": "search_order"   "predef::Search.Utils.ProfileEntry.get_database": "Search.Database.MySQL"   "predef::Search.get_filter": "Search.Filer.Base" + "predef::Serializer": "deserialize()" "serialize()" + "predef::Serializer.Encodeable": "Serializable"   "predef::Sql.Sql": "ODBC" "sybase"   "predef::Sql.mysql.big_query": "Sql.big_query()" "Sql.query"   "predef::Sql.postgres.big_query": "Sql.Sql()->query()"
1587:   "predef::Standards.X509.verify_certificate_chain": "Standards.ASN1.Sequence"   "predef::Standards.XML.Wix.get_module_xml": "Directory" "WixNode"   "predef::Stdio": "Stdio.stdout.write()" "_Stdio" "predef::werror()" "predef::write()" "set_buffer_mode" "write()" - "predef::Stdio.Buffer.add": "AddArgument" + "predef::Stdio.Buffer": "String.Buffer" + "predef::Stdio.Buffer.add": "AddArgument" "String.Buffer" + "predef::Stdio.Buffer.add_hstring": "String.Buffer" + "predef::Stdio.Buffer.create": "String.Buffer"   "predef::Stdio.Buffer.range_error": "bool" "false" "true"   "predef::Stdio.Buffer.read": "bytes"   "predef::Stdio.Buffer.read_buffer": "bool"
1633:   "predef::Tools.Markdown.parse": "Renderer" "bool"   "predef::Tools.MasterHelp": "master()->_main()"   "predef::Tools.Standalone.autodoc_to_html": "tree_split" - "predef::Tools.Standalone.autodoc_to_html.parse_text": "Node" + "predef::Tools.Standalone.autodoc_to_html.parse_text": "Node" "String.Buffer"   "predef::Tools.Standalone.forkd": "Process.RemoteProcess"   "predef::Tools.Standalone.forkd.FdStream": "ForkFd"   "predef::Tools.Standalone.process_files": "Toole.Standalone.process_files"
1672:   "predef::__builtin.Nettle.ECC_Curve.Point.set": "Curve"   "predef::__builtin.Nettle.Hash.SCRAM": "client_*" "server_*"   "predef::__builtin.Nettle.Hash.crypt_hash": "crypt_md5()" + "predef::__builtin.Nettle.Hash.hash": "String.Buffer"   "predef::__builtin.Nettle.Hash.openssl_pbkdf": "crypt_password()"   "predef::__builtin.Nettle.Hash.pbkdf1": "crypt_password()" "hkdf()"   "predef::__builtin.Nettle.Hash.pbkdf2": "crypt_password()" "hkdf()"