Commit Graph

195 Commits

Author SHA1 Message Date
Project Nayuki 1edde0571a Simplified some Java code regarding Objects.requireNonNull(). 2018-08-26 02:33:36 +00:00
Project Nayuki c8f05d24d1 Tweaked comments about inclusive ranges so that the word is consistently parenthesized. 2018-08-26 02:33:20 +00:00
Project Nayuki ccd571624e Tweaked QrCode constructor to dispose of the isFunction array in all languages except C, but somewhat differently in each language. 2018-08-26 02:17:47 +00:00
Project Nayuki c86dacacb7 Tweaked code and comment in QrCode.encodeSegments() in all language versions. 2018-08-26 02:03:27 +00:00
Project Nayuki c9553ead71 Simplified code in QrCode.drawFunctionPatterns() in all language versions, but differently in Python. 2018-08-26 01:49:27 +00:00
Project Nayuki 0ee6c41c9c Renamed QrCode.appendErrorCorrection() to addEccAndInterleave() in all language versions. 2018-08-26 01:33:06 +00:00
Project Nayuki cf0dbd4d0f Refactored control flow to reduce nesting. 2018-08-25 23:16:49 +00:00
Project Nayuki 78e234fb0d Simplified Java QrSegmentAdvanced.splitIntoSegments() to reduce redundancy. 2018-08-25 23:15:27 +00:00
Project Nayuki 432f3e0fed Added helper function to Java QrSegmentAdvanced to clarify code. 2018-08-25 23:05:31 +00:00
Project Nayuki ecfa0a83c1 Simplified miscellaneous Java and Python application code. 2018-08-22 21:25:46 +00:00
Project Nayuki 8d6dcf2631 Simplified and reformatted QrCode.getAlignmentPatternPositions() in different ways in all language versions. 2018-08-22 20:58:16 +00:00
Project Nayuki f5be9d38f6 Updated Javadoc and informal comments in Java code. 2018-08-22 20:39:45 +00:00
Project Nayuki bc372054e2 Tweaked Java QrCode.toSvgString() to avoid overflow entirely. 2018-08-22 20:34:38 +00:00
Project Nayuki 6f45d3b573 Clarified code in QrCode.drawVersion() in 4 language versions. 2018-08-22 19:56:24 +00:00
Project Nayuki 62e73f787a Renamed variable in QrCode.drawVersion() in all language versions. 2018-08-22 19:52:50 +00:00
Project Nayuki 23ae555dde Added variable for clarity to QrCode.drawFormatBits() in all language versions. 2018-08-22 19:48:29 +00:00
Project Nayuki ea29e58e9c Simplified Java code to use StringBuilder method chaining. 2018-08-22 19:47:27 +00:00
Project Nayuki f3ba9c0837 Simplified QrCode.toSvgString() loop ranges in all language versions except C. 2018-08-22 19:32:03 +00:00
Project Nayuki 62930ef455 Updated and added 5 comments in all language versions except C. 2018-08-22 19:23:40 +00:00
Project Nayuki d1f53e6e7d Added and updated 4 comments in all language versions. 2018-08-22 19:22:00 +00:00
Project Nayuki a2977e6351 Refactored a Java method to reduce indirection. 2018-08-22 18:33:28 +00:00
Project Nayuki bf62065700 Simplified and clarified small pieces of Java code, without changing behavior. 2018-08-22 18:33:01 +00:00
Project Nayuki 0e2ecff58e Tweaked Java code to convert most explicit assertion checks to native assert statements, for compactness and because the code quality ensures that the checks shouldn't fail in normal usage. 2018-08-22 18:15:15 +00:00
Project Nayuki d8d2da49e4 Tweaked Javadoc to use the word "constructs" instead of "creates" for constructors. 2018-08-22 18:05:43 +00:00
Project Nayuki b756fcd8b1 Tweaked Java BitBuffer code to add size overflow checks. 2018-08-22 18:03:17 +00:00
Project Nayuki cc939b2ebe Tweaked Java code to prevent arithmetic overflow for huge input data. 2018-08-22 17:57:40 +00:00
Project Nayuki 31ba90d0db Tweaked QrCodeGeneratorDemo Java code to use QrSegmentAdvanced.makeKanji() instead of hard-coding the data words, while maintaining identical output image. 2018-06-24 20:53:28 +00:00
Project Nayuki 49d9301b77 Updated Javadoc text for QrSegmentAdvanced related to kanji encoding. 2018-06-24 20:51:36 +00:00
Project Nayuki 67ebd5215d Renamed function in QrSegmentAdvanced to makeKanji(), for consistency with other static factories. 2018-06-24 20:51:12 +00:00
Project Nayuki c0b684bc18 Tweaked comment for kanji demo in multiple languages, so that it corresponds to the order in the sample text string. 2018-06-24 03:33:22 +00:00
Project Nayuki 80797f449e Tweaked pluralization in section comments, in multiple languages. 2018-06-23 16:21:40 +00:00
Project Nayuki 693304b8c3 Updated all language versions to add getBit() helper function and refactor existing arithmetic code to use it. 2018-04-13 19:48:59 +00:00
Project Nayuki 9728f19f59 Added integer overflow checks to toSvgString() in Java, C++, Rust code; added checks to toImage() in Java code. 2018-02-26 20:29:25 +00:00
Project Nayuki 0f73afa367 Updated Java worker program to close input stream and reduce indentation. 2017-11-23 06:27:20 +00:00
Project Nayuki 5a5626edb2 Added integer constants for QR Code min/max version numbers, made use of new constants in library and example applications, in all language versions except C. 2017-10-23 04:42:53 +00:00
Project Nayuki 6a71e09f72 Added/tweaked comments and blank lines in demo programs of all language versions except JavaScript. 2017-10-23 03:51:13 +00:00
Project Nayuki b86466ecd5 - Deleted constructors/functions/code for remasking existing QrCode object (due to doubtful real-world usefulness): C++, Java, JavaScript, Python, Rust.
- Tweaked code and comments due to feature removal: JavaScript, Python.
- Updated demo programs to reflect new API usage and add new example: C, C++, Java, Python, Rust.
2017-10-23 03:45:24 +00:00
Project Nayuki 9c1a25aba4 Changed QrCode.getModule() in {Java, JavaScript, Python, C++} language versions to return Boolean instead of 0/1 - to match {C, Rust} language versions - and updated comments and usages. 2017-08-31 20:39:29 +00:00
Project Nayuki 3d4d941da3 Updated a few documentation comments. 2017-08-31 20:21:32 +00:00
Project Nayuki 272ca8bb54 Split long lines in various {Java, JavaScript, Python, C++, C, Rust} code, without changing behavior. 2017-08-31 20:19:41 +00:00
Project Nayuki dfe960aa60 Split a long line in a comment in {Java, JavaScript, C++} language versions, without changing wording. 2017-08-31 20:19:17 +00:00
Project Nayuki 1d5ceab068 Split long lines in a comment in {Java, JavaScript, C++, Python, Rust} language versions, without changing wording. 2017-08-31 20:18:41 +00:00
Project Nayuki 2fd05cc7ef Split long lines in 2 comments in {Java, JavaScript, Python, C++} language versions, without changing wording. 2017-08-31 20:13:05 +00:00
Project Nayuki d8b66fcbf1 Updated 2 API documentation comments in {Java, JavaScript, Python, C++} language versions, though not identically. 2017-08-31 19:51:31 +00:00
Project Nayuki 4d6185a5d3 Reorganized a chunk of code in worker program of {Java, Python, C, C++} language versions, without changing behavior. 2017-08-28 04:03:05 +00:00
Project Nayuki 6dfb842afa Tweaked Java and C++ code and comment slightly. 2017-08-26 18:57:52 +00:00
Project Nayuki 6b2cfd98dc Fixed the upper limit of ECI values to be more permissive according to the spec, in almost all language versions except C. 2017-08-26 18:43:54 +00:00
Project Nayuki 8997da4651 Converted Java BitBuffer comments to Javadoc, updated related comments in most other language versions. 2017-08-18 03:36:00 +00:00
Project Nayuki 97e0388cb7 Simplified the argument check in BitBuffer.appendBits() by tightening the input range, also removed some parentheses. 2017-08-18 03:33:03 +00:00
Project Nayuki 7e512971df Fixed some arithmetic checks in Java and C code. 2017-08-18 03:31:35 +00:00
Project Nayuki 16f504be67 Inlined the 'size' variable in getAlignmentPatternPositions() in 3 language versions. 2017-08-18 00:44:24 +00:00
Project Nayuki 49f6538682 Updated a comment in getAlignmentPatternPositions() in most language versions (except JavaScript). 2017-08-18 00:39:30 +00:00
Project Nayuki 3db1e2d9b1 Renamed 'packedKanjiData' constant in demo programs. 2017-08-17 21:52:08 +00:00
Project Nayuki ff0eed8700 Tweaked C++ and Java demo code for clarity. 2017-08-17 21:37:04 +00:00
Project Nayuki f6e1276b08 Updated Java QrSegment fields from array to BitBuffer, changed methods and updated code that depended on this design. 2017-08-17 20:34:52 +00:00
Project Nayuki 05d470fcca Added BitBuffer-based constructor to Java QrSegment class, updated existing library and demo code to use it. 2017-08-17 20:28:28 +00:00
Project Nayuki 7a2555816b Updated Java BitBuffer code to add methods and make the class public. 2017-08-17 20:12:42 +00:00
Project Nayuki 493d3c31f2 Slightly simplified Java code by making BitBuffer use BitSet instead of manual array manipulation. 2017-08-17 20:08:28 +00:00
Project Nayuki d785ecb598 Simplified the no-stroke declaration in SVG output code - in Java, C++, JavaScript, Python language versions. 2017-07-26 20:34:29 +00:00
Project Nayuki 7727d371e1 Simplified Java and Python demo code slightly. 2017-05-11 20:31:42 +00:00
Project Nayuki a610a3d8df Added support for making Extended Channel Interpretation (ECI) segments - in Java, C++, JavaScript, and Python language versions. 2017-05-08 18:04:10 +00:00
Project Nayuki 0482a1ec5b Simplified a small bit of variables and logic of QrCode.getPenaltyScore() in all language versions, but in a subtly different way per language. 2017-05-08 07:30:53 +00:00
Project Nayuki 52694b5327 Simplified/deoptimized Java and JavaScript code to use string search instead of lookup table for alphanumeric mode encoding, without changing functionality. This is similar to the previous commit 106e31d9c7. By comparison, the Python code had always used a proper dictionary, and the C code implemented string search from the start. 2017-05-08 06:20:50 +00:00
Project Nayuki 50c1a6b8af Simplified a few lines of code in constructor of ReedSolomonGenerator in all language versions. 2017-05-08 05:21:05 +00:00
Project Nayuki 17e0155500 Added local variable to appendErrorCorrection() in {Java, C++, JavaScript, Python} language versions to reduce code repetition and synchronize with C version. 2017-05-06 17:19:00 +00:00
Project Nayuki 652ee37f59 Updated comment for QrCode.getNumRawDataModules() in all language versions. 2017-05-06 11:51:21 +00:00
Project Nayuki b0123fee3d Reduced lines in copyright notice of each source file (related to commit 4bba4c03ed). 2017-04-24 20:41:54 +00:00
Project Nayuki 88ad854fd3 Added hand-crafted example of kanji mode text encoding to C++, Java, Python demo programs. 2017-04-21 16:59:13 +00:00
Project Nayuki ac91c54ce1 Fixed QrSegment.getTotalBits() Java logic to catch integer overflow correctly (related to the C++ fix in commit 873652a82f). 2017-04-21 15:37:59 +00:00
Project Nayuki 6c5f8d087b Added test worker programs for Java, Python, C; added batch tester in Python. 2017-04-21 00:15:07 +00:00
Project Nayuki 2ffc439340 Updated comments in drawFunctionPatterns() of all other language versions to synchronize with C code. 2017-04-20 06:39:59 +00:00
Project Nayuki 7c173b79b4 Simplified code for 'upward' variable in all language versions, without changing behavior. 2017-04-20 04:18:22 +00:00
Project Nayuki 3e634c9f26 Renamed variable 'upwards' to 'upward' in drawCodewords() of all language versions, without changing behavior. 2017-04-20 04:06:46 +00:00
Project Nayuki f020833cd4 Simplified code in all language versions of the library (C, C++, Java, JavaScript, Python) and reduced table size, without changing behavior. 2017-04-19 23:06:40 +00:00
Project Nayuki 12360bec33 Added and updated a few comments in QrSegmentAdvanced. 2017-02-10 03:31:03 +00:00
Project Nayuki e062a386d0 Deleted copyright year in all source files, updated year in readme document. 2017-02-10 03:19:39 +00:00
Project Nayuki 8033f9cec0 Fixed a constant value in QrSegmentAdvanced, which affects how the optimal segment switching is selected. 2017-02-10 03:17:18 +00:00
Project Nayuki bd470926ca Tweaked all Java code to replace explicit null checks with calls to Objects.requireNonNull() (requires Java SE 7+). 2017-01-25 01:13:57 +00:00
Project Nayuki 18834e548b Deleted a trailing whitespace. 2016-10-05 17:36:45 +00:00
Project Nayuki ff9fbba9cf Renamed loop variable from j to i in ReedSolomonGenerator.getRemainder() in most language versions. 2016-06-14 17:10:55 +00:00
Project Nayuki a9a5cdbb58 Updated documentation comments for 3 functions in all language versions. 2016-05-24 18:41:34 +00:00
Nayuki Minase 2de9610756 Added comment about remainder bits in QR symbol in all language versions. 2016-05-07 19:02:11 +00:00
Nayuki Minase 0f71a9f818 Added an experimental advanced QR segment encoder class in Java for kanji mode encoding and optimal segment mode switching, changed a statistics helper function in QrCode.java to package-private to support the new class. 2016-04-21 21:42:35 +00:00
Nayuki Minase 85703de600 Fixed subtle logic bug in QrSegment.java to match the API promise of a fully mutable list being returned. 2016-04-21 18:39:47 +00:00
Nayuki Minase 4fcf02d1f9 Added comments and renamed variables in QrCode.appendErrorCorrection() in all language versions. 2016-04-21 01:57:58 +00:00
Nayuki Minase fc5f11b3b2 Tweaked line breaking, whitespace, and declaration ordering without changing behavior. 2016-04-20 20:50:42 +00:00
Nayuki Minase f63f890235 Changed ~4 members to package-private in all language versions, updating code in Java version but only updating comments in JavaScript, Python, C++ versions. 2016-04-20 20:40:49 +00:00
Nayuki Minase be316029aa Added and updated code comments for members (mostly) and within functions (a few), in all languages. 2016-04-20 20:27:41 +00:00
Nayuki Minase 1df147943e Tweaked section comments and blank lines for better uniformity across all language versions. 2016-04-20 20:19:57 +00:00
Nayuki Minase fc705efac3 Added white background rectangle to SVG XML code output, in all language versions. 2016-04-18 20:44:02 +00:00
Nayuki Minase 5692e951dd Revamped QrCode.encodeSegments() to add parameters to make a much richer API, in all language versions; updated JavaScript demo script to handle new semantics. 2016-04-16 03:53:58 +00:00
Nayuki Minase ca7e7a60a7 Moved QrCode.encodeTextToSegment() to QrSegment.makeSegments() and changed the function's code somewhat, in all language versions; updated JavaScript demo script to handle new semantics. 2016-04-16 01:44:24 +00:00
Nayuki Minase 3fda371340 Tweaked the comment for QrCode.encodeTextToSegment() in most language versions. 2016-04-16 01:14:22 +00:00
Nayuki Minase bd52bc3252 Moved Java code into appropriate directory structure for packages. 2016-04-15 23:59:53 +00:00
Nayuki Minase bc10146355 Moved all code into new subdirectories per programming language. 2016-04-15 02:58:02 +00:00