tools/JavaScannerBase.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 28 Jan 2015 03:12:08 +0100
branchcvs_MAIN
changeset 3360 1a8899091305
parent 3101 446b34b9a386
child 3412 df11bb428463
permissions -rw-r--r--
Merged with mercurial revision cb6c15e66be (594 changesets total) Merged changesets: - 69af63cd04a3: Jan Vrany, 2013-09-06 10:36 +0100: Added JarFileTests to test signed jars. - d87e89dd5276: Jan Vrany, 2013-09-10 10:34 +0100: Removed packages from subProjects, makefiles uodated. - 13f5be2bf83b: Jan Vrany, 2013-09-15 01:44 +0100: Merged d87e89dd5276 and fe83a843a7bf (branch default - CVS HEAD) - 7d1a1fb5b01a: Jan Vrany, 2013-09-15 02:16 +0100: Merged 272689c14005 and 13f5be2bf83b. - 3d97124aebf5: Jan Vrany, 2013-09-16 01:04 +0100: Fixes for syntax highlighting. - f56049613ff3: Jan Vrany, 2013-09-16 14:09 +0100: Initial support for live code checker / lint. - e20dd8496371: Jan Vrany, 2013-09-17 11:22 +0100: Initial support for source code indexing (for semi-modal navigation) - 7cb269d572d3: Jan Vrany, 2013-09-17 12:19 +0100: Added link to Jenkins. - 83f8416e153c: Jan Vrany, 2013-09-20 02:03 +0100: Cleanup. Change source API in `Java` to return stream rather than string. - a633a2e8e67e: Jan Vrany, 2013-09-20 02:13 +0100: Make sure eclipse Parser is initialized before actually start parsing. - b34398d8856b: Jan Vrany, 2013-09-20 10:56 +0100: Bugfix: JavaClass>>source: check for missing source. - 5c458398e060: Jan Vrany, 2013-09-20 10:57 +0100: Fixes for JavaLintService/Highlighter: correctly flush previous problems... - a9ac61c2c454: Jan Vrany, 2013-09-21 05:23 +0100: Fixes for Java syntax highlighting and checking. - 8ff7a8f45a9f: Jan Vrany, 2013-09-22 10:33 +0100: Fix in JavaClassReloader: do not transfer compiler problems... - 0db3e311a7e7: Jan Vrany, 2013-09-22 19:32 +0100: - JavaMethodDeclarationNode - 7c283887f8c4: Jan Vrany, 2013-09-22 19:35 +0100: Fixes. - 08ef7d05987b: Jan Vrany, 2013-09-23 10:03 +0100: Update JavaLintService after rename of SmallSense::SyntaxHighlightingService... - ba792256b173: Jan Vrany, 2013-09-24 00:11 +0100: Added initial version of Jabber Client demo application. - 718fab8ca4cf: Jan Vrany, 2013-09-24 01:56 +0100: Do not load libj2pcks11.so/dll but do not bark when it's loaded. - d68db9271133: Jan Vrany, 2013-09-24 01:59 +0100: Removed examples/jabber from subprojects. - ddc68c69915a: Jan Vrany, 2013-09-24 12:45 +0100: Improvements for Java code navigation. - bf52a1e5701b: Jan Vrany, 2013-09-25 10:27 +0100: Support for implementors/senders menu. - 825b27484850: Jan Vrany, 2013-09-25 16:11 +0100: Added JavaPackage>>#compiler / #source methods... - f5f21ffdbfd9: Jan Vrany, 2013-09-26 09:11 +0100: More fixes for semi-modal navigation. - 18d2c83ecb3c: Jan Vrany, 2013-09-26 09:15 +0100: Added parse tree inspector tab to JavaSourceDocument to ease debugging. - 7638771efcbe: Jan Vrany, 2013-09-28 01:49 +0100: Fix in JavaClass>>source. - bdabb1cf8408: Jan Vrany, 2013-10-01 14:17 +0100: Some more fixes for semi-modal navigation. - 1b698ca5f0fd: Jan Vrany, 2013-10-01 23:36 +0100: More fixes for semi-modal navigation - 4756cc015954: Jan Vrany, 2013-10-02 00:59 +0100: Fix in JavaSourceDocument>>#inspector2TabParseTreeInspector - added missing notNil - 09774212044f: Jan Vrany, 2013-10-02 12:31 +0100: Another fix for semimodal navigation - d82859be4462: Marcel Hlopko, 2013-09-10 00:11 +0200: remove findResolvedStaticValue from JavaFieldRef2, not used anymore - 3d4c32e21475: Marcel Hlopko, 2013-09-10 00:14 +0200: add JavaClass>>canCacheReferences - fc8ef16dcb5c: Marcel Hlopko, 2013-09-12 23:43 +0200: add JavaClass>>hasMultipleVersions - fa96e547c9a5: Marcel Hlopko, 2013-09-12 23:44 +0200: set cleanCacheFlag in JavaFieldRef when multiple java class versions present - b097de8f18b1: Marcel Hlopko, 2013-09-12 23:47 +0200: merge heads - ad96da73c612: Marcel Hlopko, 2013-09-12 23:53 +0200: merge heads - 630363041ceb: Marcel Hlopko, 2013-09-13 22:11 +0200: tiny refactoring - e3092c16bcce: Marcel Hlopko, 2013-09-19 23:24 +0200: add cleanCacheFlag to JavaFieldRef2 - 7cdd959123dd: Marcel Hlopko, 2013-09-20 00:10 +0200: fix reloading tests (now they fail where expected) - c6f2c3b4a45b: Marcel Hlopko, 2013-09-22 21:12 +0200: merge heads - 2158564a90d1: Marcel Hlopko, 2013-10-01 22:58 +0200: temporarily add JavaConstantPool>>invalidateReferencesForClass - 6659925a80a4: Marcel Hlopko, 2013-10-01 23:06 +0200: tiny fix in reloading tests - 66f842986836: Marcel Hlopko, 2013-10-02 22:07 +0200: cleanup multiple Java class versions handling - 06599146279d: Marcel Hlopko, 2013-10-02 23:33 +0200: fix JavaClassReloader>>invalidate - 7d5ffec2f654: Marcel Hlopko, 2013-10-02 23:35 +0200: run ObjectMemory>>garbageCollect before and after each Java reloading test - 0216e0808608: Jan Vrany, 2013-10-03 15:30 +0100: Bugfix: Added missing JavaSocket>>timeout: - 241e36a125a9: Jan Vrany, 2013-10-03 17:36 +0100: Added java support code for stx:libjava/libtool - d4914ffbb0cf: Jan Vrany, 2013-10-03 20:07 +0100: Fix in JavaSourceHighlighter: save full tree in sourceIndex. - b25c8b9e886a: Jan Vrany, 2013-10-04 08:59 +0100: Highlighter cleanup, addes support for Groovy. - e6109bd7dfd2: Jan Vrany, 2013-10-04 12:22 +0100: Problem highlighting optimization/cleanup. - b530c3f48cd3: Jan Vrany, 2013-10-04 12:49 +0100: Changed display string for Java methods. - 6a57107d168a: Jan Vrany, 2013-10-04 17:02 +0100: Improvement in interop/java extensions. - 662204c99509: Jan Vrany, 2013-10-05 00:57 +0100: Oops, fixed interop for extensions defined on interfaces. - f3cfee185a72: Jan Vrany, 2013-10-05 01:01 +0100: Fix for GroovyEvaluator - cec025d0f359: Jan Vrany, 2013-10-05 01:11 +0100: Oops, fix for resolving. - 92ae91b29303: Jan Vrany, 2013-10-05 01:27 +0100: Added some common collection methods to java.util.Collection... - f0c1243363d8: Jan Vrany, 2013-10-05 01:50 +0100: Improvement in GroovyEvaluator: add receiver's instance variables to accessible variables. - 6936cde374d2: Jan Vrany, 2013-10-05 23:36 +0100: Fix in Java parser: set source level to 1.6 or 1.7 depending on running system. - 2fdee4f9e146: Jan Vrany, 2013-10-05 23:37 +0100: Added Java files required by interop tests. - b2fa940b8184: Jan Vrany, 2013-10-06 00:01 +0100: Fixed tests JavaFieldRefTests>>testCorrectResolving - 24e508459735: Jan Vrany, 2013-10-06 00:03 +0100: Merged 2fdee4f9e146 (tools support and fixes) and 7d5ffec2f654 (multivers fixes) - 62c767616a13: Jan Vrany, 2013-10-06 22:37 +0100: Fixed stupid bug in JavaFieldRef2 (did not correctly set type to R_DOUBLE for double fields) - b9c510a2234e: Jan Vrany, 2013-10-06 22:39 +0100: Merged 62c767616a13 and 24e508459735 - ba98473322b9: Jan Vrany, 2013-10-07 11:06 +0100: Fix in JavaToolbox>>#displayStringForSelector:in:withClassName: - 43370b378bf9: Jan Vrany, 2013-10-07 11:27 +0100: Added lost extension MessageSend>>navigateToUsing: - c4bd856eeb26: Jan Vrany, 2013-10-07 11:29 +0100: Oops, fixed MessageSend>>navigateToUsing: extension. Sigh... - 41d1af53f1eb: Jan Vrany, 2013-10-07 11:54 +0100: Fix in JavaVM>>standardThreadGroup - 46f6ef83cce6: Jan Vrany, 2013-10-07 19:16 +0100: More extensions for List - 13b4f59e3b0a: Jan Vrany, 2013-10-08 07:05 +0100: Fixes in parsing/highlighting. - e3b939ba5a5d: Jan Vrany, 2013-10-08 09:25 +0100: Fix in JavaSourceDocument>>initializeSourceRefsInMethods - match methods using their descriptors... - 7072f7fb65f6: Jan Vrany, 2013-10-08 09:28 +0100: Support for generic (parametrized) types in source indexer. - 8542f6311dcc: Jan Vrany, 2013-10-08 10:02 +0100: Merged 7072f7fb65f6 and e3b939ba5a5d - 7cd5e50a6c5a: Jan Vrany, 2013-10-08 11:13 +0100: Load java extension methods silently. - b00543ba4599: Jan Vrany, 2013-10-08 14:06 +0100: Added #first, #second, ... extensions to the List interface - 342fbc21cc23: Jan Vrany, 2013-10-08 14:08 +0100: Small fix in JavaMethod>>argAndVarNamesInContext: - 1c7b69664136: Jan Vrany, 2013-10-08 18:04 +0100: Fixes in JavaSourceHighlighter: - 681e5db578ad: Jan Vrany, 2013-10-08 19:16 +0100: Cleanup - remove old tools (parsers/parse nodes...) - 4b819ed57eeb: Jan Vrany, 2013-10-09 11:30 +0100: Oops, cleanup commit swept way to much. Restored Java extension containers for AST nodes. - 6d3bac6f72c7: Jan Vrany, 2013-10-09 23:37 +0100: Fix in stx.libjava.tools.text.Highligter - do not override parseClassBodyDeclarations()... - 7fb4ad65d417: Jan Vrany, 2013-10-09 23:38 +0100: build.xml files fixed. - 6fa1bcf9c997: Jan Vrany, 2013-10-10 00:08 +0100: JavaClass>>#name vs. #binaryName refactoring - 881eb22c2724: Jan Vrany, 2013-10-10 01:03 +0100: Bugfix in JavaClass>>nameSpaceName: all classes loaded by primordial, ext or system class loader should go to JAVA namespace. - 36f000314bcd: Jan Vrany, 2013-10-10 10:42 +0100: Fix in mixed exception handling. - 5157d3aea2c5: Jan Vrany, 2013-10-10 10:49 +0100: Merged 6fa1bcf9c997 (classname refactoring) and 7fb4ad65d417 (main) - 16c497edc69d: Jan Vrany, 2013-10-10 10:50 +0100: Merged 5157d3aea2c5 and 36f000314bcd (mixed exception handling fix) - d4ebf2a7c399: Jan Vrany, 2013-10-10 11:00 +0100: Merged 16c497edc69d and 881eb22c2724 (fix in JavaClass>>nameSpaceName - 5ea0697eef5f: Jan Vrany, 2013-10-10 11:25 +0100: Hack for old VM JavaClass>>binaryName:numStatic: - 96f3e2254489: Marcel Hlopko, 2013-10-08 19:02 +0200: remove JavaConstantPool#ConstantPools weak array, use JavaVM registry instead - 9e7d690fdc68: Marcel Hlopko, 2013-10-10 16:53 +0200: add blank requestRecompile & requestReload methods - 06e68d6098db: Jan Vrany, 2013-10-10 16:48 +0100: Added JavaObject>#instanceOf: - 90bcc3f41a0a: Jan Vrany, 2013-10-11 10:16 +0100: Merged 06e68d6098db and 9e7d690fdc68 (Marcel's fixes) - e4f0dcc42f4a: Jan Vrany, 2013-10-11 11:33 +0100: Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag. - 3680bdc3ef00: Jan Vrany, 2013-10-11 18:34 +0100: Merged 5ea0697eef5f and e4f0dcc42f4a (monitor trace fixes) - 76893aac6a7e: Marcel Hlopko, 2013-10-12 15:53 +0200: add JavaFieldRef>>reresolveForVersion: javaClass - 1ab75f8aa9de: Marcel Hlopko, 2013-10-12 18:10 +0200: small cleanup - ad2948878d56: Marcel Hlopko, 2013-10-12 18:13 +0200: fix stupid test and voila - hierarchy tests passing :) - 751597d0526a: Marcel Hlopko, 2013-10-12 21:01 +0200: do not migrate instances when type of the field is generalized - d030cf717ca2: Marcel Hlopko, 2013-10-12 21:03 +0200: temporarily ignore type inconsistencies on return values - 6d2d593cb29e: Marcel Hlopko, 2013-10-12 21:52 +0200: rename reresolveForVersion to resolveForVersion - cace5e1f84f3: Marcel Hlopko, 2013-10-13 12:04 +0200: experimenting with fieldRef resolving for particular class version - a31c3f2902d7: Marcel Hlopko, 2013-10-13 12:31 +0200: jv please revide, I probably broke something and this only fixes a symptom. - b9fadb7c9a1f: Marcel Hlopko, 2013-10-13 14:54 +0200: move resolveForVersion moved to JavaClassRef2 - a141e4ea784d: Marcel Hlopko, 2013-10-13 16:22 +0200: ensure JavaClassRef2>>resolveForVersionOf:or: chooses class specified by the reference - 83f90bb755e8: Marcel Hlopko, 2013-10-13 16:23 +0200: fix hierarchy reloading test so it is type safe. - 853c11fe1ce8: Marcel Hlopko, 2013-10-13 20:55 +0200: wire in requestRecompile sends - c62aa3987316: Marcel Hlopko, 2013-10-13 20:56 +0200: fix another field reloading tests - 36690c744edb: Marcel Hlopko, 2013-10-13 21:11 +0200: fix field visibility reloading text so surprising behavior is even more visible - and CALLING FOR HELP :) - 47083445aaf9: Jan Vrany, 2013-10-14 08:45 +0100: Merged 3680bdc3ef00 and 36690c744edb (Marcel's reloading fixes) - 095a83d77fe3: Jan Vrany, 2013-10-14 15:18 +0100: Added #creator for mixed exception handling. - ca49798e0a5d: Jan Vrany, 2013-10-14 19:11 +0100: More fixes for new naming scheme - cfd4ec1ffa22: Jan Vrany, 2013-10-14 23:17 +0100: Reverted back Marcel's change in JavaCompiler: pass plain Smalltalk string. - 7d803d440e44: Jan Vrany, 2013-10-14 23:18 +0100: Fix in JavaClassReloaderTests>>register: (send #binaryName instead of #name) - 10c0fcf2d304: Jan Vrany, 2013-10-14 23:29 +0100: Fix JavaClassReloader for new naming (#name -> #binaryName) - 3a85f55763e2: Jan Vrany, 2013-10-15 02:33 +0100: Implemented JavaClassReloader>>#requestReload & #requestRecompile (part 1) - af4e7f1dd33e: Jan Vrany, 2013-10-15 02:34 +0100: Implemented JavaClassReloader>>#requestReload & #requestRecompile (part 3) - 192833bfdba1: Jan Vrany, 2013-10-15 15:30 +0100: Implemented stx.libjava.tools.environment.Environment.cleanup() - 3d942fb39104: Jan Vrany, 2013-10-15 15:31 +0100: Removed eclipse-runtime from stx:libjava/libs dependencies... - 7bd41088bd64: Jan Vrany, 2013-10-15 17:58 +0100: Fix in JavaCompiler>>#compile:register:notifying: (send #binaryName instead of #name) - c330ff3eb374: Jan Vrany, 2013-10-15 23:40 +0100: Fix in JavaClassReloader (recompilation) - 50b4916dd8d2: Jan Vrany, 2013-10-16 01:20 +0100: Fixes for Java method tracing/counting. - 916f3eedc505: Jan Vrany, 2013-10-16 09:09 +0100: Fix in JavaClassReloader - when updating class, also update attributes and annotations. - d92f88db7514: Jan Vrany, 2013-10-16 10:05 +0100: Improved JavaClassReader to read InnerClasses and MissingTypes attributes. - 1eaa3f10540b: Jan Vrany, 2013-10-16 10:48 +0100: Removed JavaSingleClassReloaderTests, tests merged in JavaClassReloaderTests. - 90724c4fa7f8: Jan Vrany, 2013-10-16 14:15 +0100: Fix to recompile erroneous classes upon reload. - 4b11c2089443: Jan Vrany, 2013-10-17 02:02 +0100: Removed obsolete tests... - b8187695c8cd: Jan Vrany, 2013-10-17 02:05 +0100: Added JavaMethod>>#interpretWithReceiver:arguments: - 948160ac3435: Jan Vrany, 2013-10-17 02:24 +0100: Fix in JavaCompiler>>#recompile: when recompiling, use class's original class loader. - 3ed529d88338: Jan Vrany, 2013-10-17 11:11 +0100: Recompilation fixed (avoid endless recursion) - 3084c43f20a1: Jan Vrany, 2013-10-18 16:54 +0100: Introduced GroovyScanner with support for Groovy-only tokens... - e62187297585: Jan Vrany, 2013-10-18 16:55 +0100: Fix in JavaSourceDocument - care for types with no method declarations - d8458cc3aabe: Jan Vrany, 2013-10-19 17:38 +0100: Make JavaVM>>#loadClassesIn: to work with .jar files as well. - 7bcde178eee7: Jan Vrany, 2013-10-20 00:07 +0100: Fix in JavaSourceHighlighter: do full highlighting for applications spawn from the debugger. - 5f7f5fca111a: Jan Vrany, 2013-10-21 08:31 +0100: Fix stx.libjava.tools.Source#getFileName(): always return a name to avoid NPE. - 83a135e3ef74: Jan Vrany, 2013-10-21 08:32 +0100: Call CompilationUnitDeclaration#analyseCde() to perform flow analysis... - a4c9642a6a67: Jan Vrany, 2013-10-21 10:39 +0100: Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError. - dc03c9cd404a: Jan Vrany, 2013-10-22 00:07 +0100: Optimization in JavaLintService: cache language of the code view in an instvar. - 781c4bed22d0: Jan Vrany, 2013-10-22 03:44 +0100: Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner. - a284a338f355: Jan Vrany, 2013-10-22 14:57 +0100: Fixed a very. very nasty bug in wait(). - 64b02ee49807: Jan Vrany, 2013-10-22 18:50 +0100: Addes synchronization in JavaClass>>classInit. - 38bc44ad0f95: Jan Vrany, 2013-10-22 23:21 +0100: More fixes after Java class name refactoring. - 2f98edaf6aba: Jan Vrany, 2013-10-23 00:49 +0100: Removed JavaContext>>#argsAndVars - context inspector should show `this` as well. - 5b492b74975f: Jan Vrany, 2013-10-23 10:50 +0100: Bugfix in JavaMethod>>lineNumber (missing return) - a988e67e4dea: Jan Vrany, 2013-10-23 12:25 +0100: Fix in native java.lang.Class#forName0() - 96f3d8a73343: Jan Vrany, 2013-10-24 23:19 +0100: Fixed JavaLintService>>#unregister - break dependencies when unregistering - 60ed1d160ea5: Jan Vrany, 2013-10-26 17:56 +0100: Fix in JavaClassReloader - ignore non-Java methods when recompiling users of removed method. - 80bc02e62077: Jan Vrany, 2013-10-26 18:05 +0100: - JavaClassReloader - 272f9a99e3db: Jan Vrany, 2013-10-26 21:29 +0100: Fix in JavaSourceHighlighter::Indexer - allow for null variable binding. - 75e3fb8a615f: Jan Vrany, 2013-10-27 09:43 +0000: Fix in JavaSourceHighlighter>>doLexicalHighlightingOnly: care for window groups with no main view - 70df89fe0af0: Jan Vrany, 2013-10-27 10:28 +0000: Fix in JavaSourceDocument>>#initializeSourceRefsInMethods - 20d65bcdae80: Jan Vrany, 2013-10-28 10:42 +0000: Refactored JavaObject>>#doesNotUnderstand: refacttored to provide better UX in debugger - 1dbc311e1d74: Jan Vrany, 2013-10-28 11:29 +0000: Bugfix JavaClassReloader: handle missing/mis-spelled classes. - 894e894aa511: Jan Vrany, 2013-10-28 11:39 +0000: Fix in JavaClassReloader>>updateOldClass: update old method only if class of the method is the same. - edaa0c80646e: Marcel Hlopko, 2013-10-28 15:36 +0100: fix JavaBehavior>>hasMultipleVersions - 21a756977e9f: Marcel Hlopko, 2013-10-28 15:37 +0100: add Java reloading tests - fields in parent, GCing unused class versions - ec6e8825f168: Jan Vrany, 2013-10-31 07:53 -0300: Fix in stx.libjava.tools.text.Highlighter: do not try resolve fields when binding is null. - b7070e447ed0: Jan Vrany, 2013-11-05 17:52 +0000: Fixes for displaying local variables in debugger. - 89c09ec6e109: Jan Vrany, 2013-11-06 23:31 +0000: Fix for JavaTestsLoader (after JavaClass>>name refactoring) - 8005b7c3e51a: Jan Vrany, 2013-11-06 23:33 +0000: Fix in stx.libjava.tools.text.Highlighter: do not try resolve QualifiedNameReference when binding is null - 3a7d18c7fe40: Jan Vrany, 2013-11-06 23:40 +0000: Merged 8005b7c3e51a and 21a756977e9f - 3dd946439657: Jan Vrany, 2013-11-07 18:48 +0000: Fix in JavaClass>>#javaUnwrap: care for nil/null. - 503761e88b38: Jan Vrany, 2013-11-08 10:11 +0000: Fixes for Mauve tests. - 064418faa2e3: Jan Vrany, 2013-11-11 09:48 +0000: Another pass over Mauve tests. - 2fae1fd966be: Jan Vrany, 2013-11-11 17:27 +0000: Added JavaRelease>>system which uses default system Java installation. - f6e83cfb4d0f: Jan Vrany, 2013-11-11 21:20 +0000: Added natives required by OpenJDK 7, update 25. - 69560c0ea583: Jan Vrany, 2013-11-11 21:32 +0000: Oops, fix in JavaNativeMethodImpl_OpenJDK6>>invoke:receiver:arguments:context:constructor: - a38c23f77e42: Jan Vrany, 2013-11-11 22:05 +0000: Fixed native java.io.*FileSystem#createFileExclusively - 7d69859368db: Jan Vrany, 2013-11-11 22:33 +0000: Oops, fixed mispelled arg name in JavaNativeMethodImpl_OpenJDK6. - 1f4c3054998c: Jan Vrany, 2013-11-12 01:31 +0000: Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag. - ac252847cc04: Jan Vrany, 2013-11-12 02:14 +0000: Oops, fix in isCloneable - if ACX_CLONEABLE is not set, always check interfaces. - 3d8a63dbf6dd: Jan Vrany, 2013-11-12 11:17 +0000: Oops, fix for JavaClass>>isCloneable - handle subclasses of a class that implements Cloneable. - e634189c444e: Jan Vrany, 2013-11-13 11:13 +0000: Another pass over java.io.* natives. Fixes for OpenJDK 7. - e2fc5ead5542: Jan Vrany, 2013-11-14 01:25 +0000: Fix in Float/LargeInteger>>javaBox: - d4ef0fe45599: Jan Vrany, 2013-11-14 12:06 +0000: Fix in JUnitTestCaseProxy>>#testSelectors. - 36e0682339ed: Jan Vrany, 2013-11-14 23:24 +0000: Fixed natives to convert float/double to int/long bits and other way around... - 85ccd41f883c: Jan Vrany, 2013-11-14 14:50 -0800: Fixes and (void) natives for shared-memory JDI transport. - 9fd2ea0570fe: Jan Vrany, 2013-11-15 11:01 +0000: Merged 36e0682339ed and 85ccd41f883c - 0be6bc618029: Jan Vrany, 2013-11-15 15:17 +0000: When accessing Java source in .har, try uncompress it using ZipArchive first... - 0479c114bcc0: Jan Vrany, 2013-11-15 22:39 +0000: Merged 9fd2ea0570fe and 0be6bc618029 - a77c05c8cd68: Jan Vrany, 2013-11-15 23:00 +0000: Fix in JavaVM for exception debugging. - 223fb480e1fb: Jan Vrany, 2013-11-15 23:01 +0000: Fix for OpenJDK7 native _java_util_zip_ZipFile_getEntryBytes:_: _: _: - b8295c72dd53: Jan Vrany, 2013-11-18 14:00 +0000: Added tests for FREM/DREM and ?AND and ?OR. - 08a14f3553a2: Jan Vrany, 2013-11-18 14:53 +0000: Fix in JavaVM>>#unpark: (typo) - b919ffd3d2a6: Jan Vrany, 2013-11-18 22:08 +0000: Fixed classpath for stx:libjava/libs eclipse project (removed obsolete libs) - 8c690545a18d: Jan Vrany, 2013-11-18 23:04 +0000: Fix in JavaCodeLibrary>>classPathOn: - allow for sources-only libraries. - e215dba1f0fb: Jan Vrany, 2013-11-18 23:07 +0000: Fix in JavaClassReader for concurrent access to zipa archives. - 54787b966373: Jan Vrany, 2013-11-18 23:08 +0000: Added Java code bundle with Tomcat sources to ease debugging. - 7c556b58cd4b: Jan Vrany, 2013-11-19 00:44 +0000: Fixes in ApacheTomcat6 (misspelled class name) + build files regenerated - 969166ba9c7c: Jan Vrany, 2013-11-19 00:45 +0000: Merged 7c556b58cd4b and 08a14f3553a2 - 1fc9ae49376d: Jan Vrany, 2013-11-19 00:46 +0000: Merged 969166ba9c7c and 54787b966373 - 7a439bd8ae5b: Jan Vrany, 2013-11-19 10:01 +0000: Added JavaCompilerForSmalltalkExtensionsOnly for environments without full JavaCompiler... - 65d127f0c9c1: Jan Vrany, 2013-11-19 10:20 +0000: Fix in interop - make sure the class is initialized when invoking static method. - c464794e5fa2: Jan Vrany, 2013-11-19 11:29 +0000: Added signal handlers to ApacheTomcat6 startup class. - 3f4853b3c30d: Jan Vrany, 2013-11-20 10:00 +0000: Calls to fdlim functions embedded into natives, JavaMathSupport removed. - 451954b79f93: Jan Vrany, 2013-11-20 10:42 +0000: Fixes for Tomcat 6 startup. - c342efcd1bcb: Jan Vrany, 2013-11-20 16:13 +0000: Oops, added missing class JavaCompilerForSmalltalkExtensionsOnly. - c39cbf09ea3d: Jan Vrany, 2013-11-20 16:40 +0000: Fixes for Java reflection on Smalltalk classes. - cc9cf6c073bd: Jan Vrany, 2013-11-20 16:41 +0000: Merged c342efcd1bcb and c39cbf09ea3d - d0b831020baa: Jan Vrany, 2013-11-20 17:31 +0000: Fixes for Tomcat example: allow Workspace WEBAPP to run without JavaScript loaded. - 98971af93e31: Jan Vrany, 2013-11-20 23:45 +0000: Fix in JavaVM>>#initializeSystemPropertiesInto: be careful when initializing stx.libjava.tests... - 5f8f0ac505a5: Jan Vrany, 2013-11-22 10:33 +0000: Fix in JavaClassReader>>#readClass:from:ignoring: (fix wrong code for zar refcounting) - e5fc3aaad7a2: Jan Vrany, 2013-11-23 10:19 +0000: Build support files for tomcat6 laucnher fixed - af30789878ce: Jan Vrany, 2013-11-26 21:19 +0000: Temporary class loading race-condition workaround. - 448a12efa893: Jan Vrany, 2013-11-26 21:21 +0000: Fix in Mauve DoubleTest. - ec1be126d72e: Jan Vrany, 2013-11-26 23:04 +0000: Fixes in Java source highlighting - boot Java if not already. - 590fd4bf22a8: Jan Vrany, 2013-11-27 00:29 +0000: Hack in JavaSourceHighlighter for JImport expecco plugin. - ff6465e92d95: Jan Vrany, 2013-12-03 00:17 +0000: Flush JavaClassRegistry's notifier when flushing classes. - 7c542571c7c1: Jan Vrany, 2013-12-03 00:37 +0000: Added interop tests for constructors. - f5b13d9b249b: Jan Vrany, 2013-12-03 01:14 +0000: Added all stubs for native methods from recent OpenJDK 6. - 55692310d4e6: Jan Vrany, 2013-12-06 22:10 +0000: Fix in JavaVM>>monitorEnter:in: inflate thinlock using #getMonitor. - 17be352f0130: Jan Vrany, 2013-12-08 00:41 +0000: Added lockWord to JavaBehavior to enable thinlocking for static methods and resolver. - 02b58c7079ac: Jan Vrany, 2013-12-08 22:36 +0000: Added JavaObject>>synchronized: and JavaClass>>synchronized: - bbd626006ab0: Jan Vrany, 2013-12-09 23:52 +0000: Access to ZipEntryCache synchronized to avoid races. - 3e837849ce3e: Jan Vrany, 2013-12-10 10:46 +0000: Bugfix: fixed premature freeing of zip entry causing zip entry. - d133d35e293b: Jan Vrany, 2013-12-10 22:33 +0000: Class loading refactoring (part 1) - 86e181f74199: Jan Vrany, 2013-12-10 23:04 +0000: Class loading refactoring (part 2) - 83d32dc4fcea: Jan Vrany, 2013-12-10 23:20 +0000: Class loading refactoring (part 3) - 2397022c7057: Jan Vrany, 2013-12-12 15:30 +0000: Bugfix in JavaRelease::OracleJDK7>>validateJavaHome2: - 7c3b2a89f173: Jan Vrany, 2013-12-18 00:02 +0100: Use system class loader when loading class for JavaClassAccessor. - bac7022ca26a: Jan Vrany, 2013-12-18 12:03 +0100: Merged 7c3b2a89f173 and 80a1a085a982 (branch performance-optimizations) - afd174546057: Jan Vrany, 2013-12-18 14:52 +0100: Post-merge fixes. - 8ffaaa45f964: Jan Vrany, 2013-12-23 22:49 +0100: Fix in Java>>flushClasses: do not use Smalltalk>>removeKey: - d4963adcb114: Jan Vrany, 2013-12-23 22:59 +0100: Added JavaClass>>synchronized: that uses thinlocks. - 38f0943c97a4: Jan Vrany, 2013-12-23 23:14 +0100: Fix in JavaRef2>>#resolve: resolving is now synchronized on class. - c9408352a572: Jan Vrany, 2014-01-07 13:44 +0100: Fix in JavaClass>>#perform:onReceiver:from:ifNotFound: pass selector/sender when evaluatinh method using Method>>valueWith:... - a44d1fa11204: Jan Vrany, 2014-01-14 09:49 +0000: Fix in JavaSourceHighlighter>>#formatClassDefinition:in: - care for formatting class side... - 3d6c08acf4cd: Jan Vrany, 2014-01-18 11:43 +0000: Fixed native #_sun_reflect_Reflection_getCallerClass:_: to work with new JIT compilation scheme. - 64ec2085e797: Jan Vrany, 2014-01-18 21:42 +0000: Better printOn: / printString: fpr JavaMethodRef2 - 36b5b06398b5: Jan Vrany, 2014-01-18 21:44 +0000: Fix in ByteArray>>_CHECKCAST:/_INSTANCEOF: (typo/copy paste error) - ec1f7113fac0: Jan Vrany, 2014-01-18 21:47 +0000: Added _INVOKE*R: methods used by new JIT compiler. - a384a02381c0: Jan Vrany, 2014-01-20 14:04 +0000: Update JavaLookup to work with new JIT-compilation scheme... - c3005d991df7: Jan Vrany, 2014-01-20 14:06 +0000: JavaRef2>>invalidate/invalidateForClass: moved from experiments to stx:libjava - f44a7499454b: Jan Vrany, 2014-01-20 15:11 +0000: Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code) - c69ab7aefc53: Jan Vrany, 2014-01-20 23:08 +0000: Fixed _GETSTATIC_R: / _PUTSTATIC_R: - initialize class if not already. - 604d4f079e66: Jan Vrany, 2014-01-21 11:28 +0000: Fix in JavaClass>>basicNew initialize class if not already. - 5c86c719a79b: Jan Vrany, 2014-01-21 14:44 +0000: Fix in JavaLookup::Smalltalk2Java: match Unicode16/32String to java.lang.String when calling Java method from Smalltalk. - 673487527490: Jan Vrany, 2014-01-22 15:02 +0000: Fix in JUnitTestCaseProxy>>performTest. - 3947e2e8f8d9: Jan Vrany, 2014-01-22 15:28 +0000: Added new native JavaNativeMethodImpl_OpenJDK6>>#_java_lang_Class_getDeclaringClass0: - 3f59f05b601e: Jan Vrany, 2014-01-23 16:16 +0000: Added tests from GETFIELD/PUTFIELD and INVOKE*. - 369b56b7f766: Jan Vrany, 2014-01-23 23:10 +0000: Merged 3f59f05b601e and 64ec2085e797 - 6b521f99c43b: Jan Vrany, 2014-01-27 14:00 +0000: Moved JavaCompilerTests to stx:libtool. - 1badaa4fa024: Jan Vrany, 2014-01-28 11:23 +0000: Added support for new MULTIANEWARRAY implementation. - ed6c057accab: Jan Vrany, 2014-01-28 11:23 +0000: Added tests for MULTIANEWARRAY instruction - 593add70a2cd: Jan Vrany, 2014-01-28 14:43 +0000: Added _MULTIANEWARRAY* methods to suppott new MULTIANEWARRAY implementation. - 21011804a910: Jan Vrany, 2014-01-29 17:27 +0000: Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil. - c45e84ee0baf: Jan Vrany, 2014-01-30 23:40 +0000: Fix in method ref: initialize class if not already, removed breakpoints... - 732f9db2a195: Jan Vrany, 2014-01-31 09:19 +0000: Cleanup & refactoring of constant pool references (JavaRef2 hierarchy) - ed8cd8e5a16d: Jan Vrany, 2014-01-31 12:41 +0000: Added JavaBooleanArray to represent boolean[]. - 53644e5c7d2b: Jan Vrany, 2014-01-31 17:17 +0000: Rename __ACC_BREAKPNT to __ACX_BREAKPNT, there's no such constant in JVM spec. - 4f0cd5c93d1b: Jan Vrany, 2014-02-03 09:25 +0000: Fixed some java.io.WinNT/Win32FileSystem natives. - 7472dbd72ef7: Jan Vrany, 2014-02-05 09:08 +0000: Fixed native _java_net_Inet4AddressImpl_lookupAllHostAddr:_: - 7702920fa03a: Jan Vrany, 2014-02-05 14:01 +0100: Added tests for reflection on arrays. More tests for shift instructions. - 220f5d25933a: Jan Vrany, 2014-02-05 15:13 +0100: Merged 7702920fa03a and 1badaa4fa024 - fe87c228905c: Jan Vrany, 2014-02-05 15:22 +0100: Merged 220f5d25933a and 7472dbd72ef7 - 08d798b4ef80: Jan Vrany, 2014-02-05 16:26 +0100: Added run-all.rb scrip to run all tests on several different configurations - a80a2d7fc0e1: Jan Vrany, 2014-02-05 16:28 +0100: Added XMPP Chat example (shown at Smalltalks 2013) - c1ec15d94457: Marcel Hlopko, 2014-01-25 21:35 +0100: fix javaHome for oracle-7 - c9f0019485ff: Marcel Hlopko, 2014-01-25 21:47 +0100: get rid of old mh breakpoint - 659fb25645b0: Marcel Hlopko, 2014-01-26 17:15 +0100: fix constant pool content tests - 394676d5c68e: Marcel Hlopko, 2013-12-12 16:42 +0100: fix typo in JavaRelease - c1c82d3baae7: Jan Vrany, 2014-02-06 10:38 +0100: Use Ant+Ivy instead of Maven to download libraries in stx:libjava/libs - 8fcf6cde056e: Jan Vrany, 2014-02-06 10:45 +0100: Merged c1c82d3baae7 and 394676d5c68e - 414e6567b574: Jan Vrany, 2014-02-06 10:48 +0100: Merged 8fcf6cde056e and 659fb25645b0 - 024e71f1142e: Jan Vrany, 2014-02-06 11:10 +0100: Merged Claus's Java release definition for OS X into JavaRelease::AppleJDK6. - 8b3f1f16a660: Jan Vrany, 2014-02-06 14:06 +0100: Fix in JavaRelease::AppleJDK6 - removed JavaVMData pool - 7ff48afbef00: Jan Vrany, 2014-02-07 09:07 +0100: Fixes in natives for non-TRADITIONAL_STACK machines. - c04668cd040d: Jan Vrany, 2014-02-07 09:49 +0100: Natives cleaned up a bit. - e7c286435bfe: Jan Vrany, 2014-02-11 16:29 +0000: Fixed tests'run-all.rb to run under Windows as well. - 39a55d1baeff: Jan Vrany, 2014-02-11 20:21 +0000: Yet another cleanup of java.io.FileSystem mess. - 506844f3740e: Jan Vrany, 2014-02-11 21:52 +0000: Reduced dimensions on MULTIANEWARRAY#test_incomplete_02 to avoid 2-pass compressing GC. - 31dc5184bf9a: Jan Vrany, 2014-02-12 10:30 +0000: Workaround in JavaRelease::OpenJDK7>>searchForSourcePath for Debian boxes. - 93a610491bf8: Jan Vrany, 2014-02-12 11:10 +0000: Fixes in java.io,Win32FileSystem - added listDrives0() native. - e2137bf62524: Jan Vrany, 2014-02-12 12:39 +0000: Fix in JUnit/TestletTestCaseProxy. - 2efe1601724c: Jan Vrany, 2014-02-12 15:37 +0000: Merged 31dc5184bf9a and e2137bf62524 - aed7115ce6e8: Jan Vrany, 2014-02-12 20:47 +0000: Fix in JavaRelease::OpenJDK6>>searchForSourcePath. - 3bc512cb6649: Jan Vrany, 2014-02-12 21:28 +0000: Branch development merged into default. - f17a68612f53: Jan Vrany, 2014-02-13 08:54 +0000: Fake-merged bdf545540de0 into 3bc512cb6649 to get rid of second head. - 5f69bed172fe: Jan Vrany, 2014-02-17 15:22 +0100: Fix in JavaRelease::AppleJDK6 - should be available only on OS X. - 590aa6c3cb24: Jan Vrany, 2014-02-19 10:21 +0000: Improvements and fixes in GroovyEvaluator. - b5001e1fb06c: Jan Vrany, 2014-02-20 22:54 +0000: More compatibility extensions for java.util.List - a7a3fdc9d6b7: Jan Vrany, 2014-02-25 17:01 +0000: Fixes in java.util.List>>indexOf: & identityIndexOf: - 36a4e9ab4d00: Jan Vrany, 2014-03-04 13:36 +0000: Skip all workspace tests in GroovyEvaluatorTests when there's no display connection... - 66e0970661db: Jan Vrany, 2014-03-04 17:03 +0000: Removed #preRequisites, build files regenerated. - 366b8f64dc45: Jan Vrany, 2014-03-07 00:20 +0000: Eclipse projects updated. - 31ddc9aa291d: Jan Vrany, 2014-03-18 11:32 +0100: Fix in JavaRelease>>system for UNIX-like systems. - e924b175ca61: Jan Vrany, 2014-03-19 11:12 +0000: Added ThreadStopTests to tests execution abortion. - ff90519ce3ac: Jan Vrany, 2014-03-19 11:48 +0000: Interop tests refactoring. - 7a326f9f8aad: Jan Vrany, 2014-03-19 17:44 +0000: Bug fix in interop with respect to overloaded methods in subclasses. - 40beb6dad64f: Jan Vrany, 2014-03-20 14:13 +0000: Eclipse projects cleanup - b25792751803: Tomáš Heger, 2014-03-19 05:32 +0100: First implementation of ClassFileScanner. - 135c3202c5b7: Tomáš Heger, 2014-03-19 23:43 +0100: ClassFileScanner fixed, tests added. - 08238e0175ae: Tomáš Heger, 2014-03-20 10:52 +0100: Major version number verifying added. - f08a8f57d43b: Jan Vrany, 2014-03-20 14:39 +0000: Merged 08238e0175ae and 40beb6dad64f (Tom's ClassFileScanner) - 3ac5c037b13d: Jan Vrany, 2014-03-20 14:43 +0000: Fixed stx.libjava.tools.compiler.CompilerError initialization problem. - 74535b57b370: Jan Vrany, 2014-03-21 13:25 +0000: Make internal JVM processes to form a new provess group on Smalltalk VM level. - 033e56844dc9: Jan Vrany, 2014-03-25 15:36 +0000: Fixes to for JDI debugger. - d23f94ac7fd5: Jan Vrany, 2014-03-31 12:05 +0200: Made non-ASCII literals encoded using \uXXXX rather than using direct UTF8 in .java sources. - 36df3896ac57: Jan Vrany, 2014-04-01 13:41 +0200: Fixed JavaReleaser>>JDK6/JDK7 - eae56960a120: Jan Vrany, 2014-04-01 14:40 +0200: Oops, fixed syntax error (missing dot) - 642c961ea130: Jan Vrany, 2014-04-02 16:19 +0200: Fix in JavaRelease::SunJDK122. - 7e5ad1b76629: Jan Vrany, 2014-04-03 12:38 +0200: Initial stubs for Java 8 - 10b7a8f2e23c: Jan Vrany, 2014-04-03 21:00 +0200: Change JavaRelease to use output of `java -version` when validating Java installation directory. - fd92dea7b142: Jan Vrany, 2014-04-04 13:10 +0200: Bugfix in JavaVM>>initializeVM: do not deadlock caller if VM initialization failed. - cec6d766280e: Jan Vrany, 2014-04-08 09:34 +0200: Workaround for JAVA NameSpace (from Java bridge) vs JAVA JavaPackage (from STX:LIBJAVA) - ccf0bb9b983b: Jan Vrany, 2014-04-08 14:59 +0200: JavaRelease>>inDirectory refactored to not hard-code relative paths to java executable within JRE/JDK. - 824804a0ae03: Jan Vrany, 2014-04-08 16:28 +0200: Added extension java.util.Collection#anElement - f252b6759c9e: Jan Vrany, 2014-04-08 19:16 +0200: Fixed DNU in JavaReleaseTests - d64f0b5cc383: Jan Vrany, 2014-04-09 08:37 +0200: Oops, fixed condition in skipIf: in JavaReleaseTests - a3f6e540a232: Jan Vrany, 2014-04-09 10:00 +0200: Keep source along with parse tree index. - 3ac1f611b373: Jan Vrany, 2014-04-09 14:30 +0200: Fixes in GroovyLanguage - fcbadfecc4d7: Jan Vrany, 2014-04-09 17:14 +0200: Updated Groovy to 2.1.1. Download Groovy and JUnit using IVY. - dd7f7a54107b: Jan Vrany, 2014-04-09 17:29 +0200: .hgignore improved - 8c0339f8c175: Jan Vrany, 2014-04-09 18:41 +0200: Fixes for groovy. - 4bbacafb9592: Jan Vrany, 2014-04-09 18:54 +0200: Renamed JavaClassRegistry>>classesDo: to allClassesDo: - a65f7a72b3bf: Jan Vrany, 2014-04-09 21:53 +0200: JavaCodeBundle>>standardPackageBundleFor: improved - a29506c02dcc: Jan Vrany, 2014-04-10 09:04 +0200: Minor fixes in start/stop position for local/type declaration nodes. - 3f6f3b935c17: Jan Vrany, 2014-04-10 10:10 +0200: Fixed unimplemented native java.lang.reflect.Array.get() - 7145c825db68: Jan Vrany, 2014-04-10 15:39 +0200: More work on java.lang.reflect.Array natives. - f22d5febda61: Jan Vrany, 2014-04-11 18:20 +0200: Introduced a JavaClassEnvironment - an abstract namespace-like class to keep Java classes. - 7c91a4227264: Tomáš Heger, 2014-04-04 11:38 +0200: Added the ".metadata" directory. - a6feb6da5718: Tomáš Heger, 2014-04-14 11:34 +0200: Initial implementation of a dumper of IBinaryType objects. - 92d7ca788f14: Tomáš Heger, 2014-04-14 11:35 +0200: Initial (and incomplete) implementation of Reflective* classes. - 642396977525: Tomáš Heger, 2014-04-14 12:09 +0200: Various fixes (including Honza's) regarding Reflective* classes. - a60e7d264dc2: Tomáš Heger, 2014-04-14 13:27 +0200: Unused code commented out. - db83cc770144: Tomáš Heger, 2014-04-14 13:37 +0200: Returning correct names fixed. - 7cb0df30d317: Tomáš Heger, 2014-04-14 14:38 +0200: test_06 fixed - f44978fc1abd: Jan Vrany, 2014-04-15 13:51 +0200: Added #hash and #= to JavaCodeLibraryOrBundle. - 718746a2ac28: Claus Gittinger, 2014-04-13 16:53 +0200: - JavaRelease - 76a10700c053: Claus Gittinger, 2014-04-15 01:04 +0200: - JavaObject - aa8989bbd454: Claus Gittinger, 2014-04-15 01:08 +0200: - JavaNativeMethodImpl_OpenJDK6 - eba90d210e65: Claus Gittinger, 2014-04-15 01:21 +0200: - JavaNativeMethodImpl_OpenJDK6 - 375c8ea59bad: Jan Vrany, 2014-04-15 19:01 +0200: Merged f44978fc1abd and eba90d210e65 - df5a76fdd3a6: Jan Vrany, 2014-04-15 22:22 +0200: Changed display string of JavaRelease. - e35f2fac0337: Jan Vrany, 2014-04-16 08:59 +0200: Improved JavaCodeBundle>>standardPackageBundleFor: to support layout with separated tests... - 4fbf1e915fdd: Claus Gittinger, 2014-04-16 14:28 +0200: - GroovyEvaluator - 51c43574dc90: Claus Gittinger, 2014-04-16 15:57 +0200: - JavaRelease - 99f84ab46898: Claus Gittinger, 2014-04-16 18:27 +0200: - JavaNativeMethodImpl_OpenJDK6 - ccde6af7278c: Claus Gittinger, 2014-04-16 18:53 +0200: JavaContext: - 88ad88fdeca5: Jan Vrany, 2014-04-16 19:32 +0200: Merged df5a76fdd3a6 and ccde6af7278c - 54211576c9ce: Claus Gittinger, 2014-04-16 20:14 +0200: JavaClassRef2: - 08ec1ceb01e7: Claus Gittinger, 2014-04-16 21:17 +0200: JavaLanguage: - 78e1d19eb584: Jan Vrany, 2014-04-17 07:45 +0200: Fixed JavaCompiler>>synchronizationSemaphore. - 9d79b824c1ad: Claus Gittinger, 2014-04-17 10:13 +0200: JavaRelease: - 7eef27e37553: Jan Vrany, 2014-04-17 11:56 +0200: Fixed path to Groovy jars in ant build files. - 35b8520c46f2: Jan Vrany, 2014-04-17 12:53 +0200: Oops, more fixes to ant build files. - 7bb1f4106033: Jan Vrany, 2014-04-17 16:20 +0200: Cherry-picked changes from 35b8520c46f2. - c49c94053695: Jan Vrany, 2014-04-17 16:34 +0200: Moved CompilerAdapterTests.java to tools/java/src-tests. - 5d7c92ab734b: Jan Vrany, 2014-04-17 20:16 +0200: Fixed JavaRelease class>>system - 388adc0de925: Jan Vrany, 2014-04-22 16:32 +0200: Fix in JavaClassEnvironment>>at:ifAbsent: - b1192955f5a3: Jan Vrany, 2014-04-22 22:37 +0200: Fixed native _java_lang_ClassLoader_defineClass1: _: _: _: _: _: _: _: - 158c061202f3: Jan Vrany, 2014-04-22 22:41 +0200: Merged 388adc0de925 and b1192955f5a3 - c37c50e0aa5a: Jan Vrany, 2014-04-27 21:00 +0100: Fix in containsMethodsAnnotatedWith: - do not compare binary names, compare superclasses - ebf6ad1545af: Claus Gittinger, 2014-04-30 20:29 +0200: source code access fixed for apple: - 19a2b75907ce: Claus Gittinger, 2014-04-30 22:02 +0200: new native - cf2d8949d5a5: Jan Vrany, 2014-05-05 10:10 +0100: Better coding style of JavaClass/JavaBehaviour>>setInterfaces: - 446b34b9a386: Jan Vrany, 2014-05-12 17:34 +0100: Fixed GroovyScanner w.r.t ''' multiline comments. - c0d467b37565: Jan Vrany, 2014-05-13 11:49 +0100: Changed supeclass of JavaClassEnvironment to SystemEnvironment. - a7d69709920f: Jan Vrany, 2014-05-14 00:07 +0100: Use lexical highlighting when JVM is not booted. - c4709bcca97a: Jan Vrany, 2014-05-14 16:36 +0100: Bugfix in JavaScanner - correctly handle dot a the end of input. - 7cc116da75e8: Jan Vrany, 2014-05-18 13:11 +0100: Added 'def' to keywords. - e53888146940: Jan Vrany, 2014-05-20 17:57 +0100: Added support for new constants used bu JSR 272 Invoke dynamic. - d1d41053a1c8: Jan Vrany, 2014-05-21 11:22 +0100: Mark all classes in stx:libjava/benchmark as obsolete. - 6d8f66f1ff39: Jan Vrany, 2014-05-21 16:56 +0100: [Class reader optimization 1/3]: Added JavaBenchmarkClassReader - 2c747ca6078d: Jan Vrany, 2014-05-21 17:10 +0100: [JavaClassReader optimization 2/3]: add methods at once instead of individually. - 3119ced5d03c: Jan Vrany, 2014-05-21 21:08 +0100: [JavaClassReader optimization 3/3]: optimize JavaMethod>>setName:descriptor: - b442904eec25: Jan Vrany, 2014-05-23 22:26 +0100: Moved Context>>arg1Index to stx:libbasic. - 1f8c991bc1d2: Jan Vrany, 2014-05-27 12:49 +0100: Variaous optimizations in string manipulatios to speed up class reading. - 3cdcaf15c918: Jan Vrany, 2014-05-27 13:18 +0100: Merged 1f8c991bc1d2 and b442904eec25 - 819926f83b48: Tomáš Heger, 2014-04-14 15:46 +0200: Occurences of "assertTrue(false)" replaced by "fail()" in the tests. Useless catch block removed from test_06. - 3e12320cb6c7: Tomáš Heger, 2014-05-22 02:01 +0200: Fields, annotations and tag bits implemented. - 54d901dba381: Tomáš Heger, 2014-05-22 03:25 +0200: Generic signature dumping fixed (wrong use of the delimiter). - 84a135e483a6: Tomáš Heger, 2014-05-27 16:34 +0200: Added testcase for the ReflectiveField.getConstant() method. - d73feaf2aecc: Tomáš Heger, 2014-05-27 16:37 +0200: ReflectiveField.getConstant() implemented. It's not working yet though - any attempt to get value of a field throws IllegalAccessException. - 6451ff1e43cf: Tomáš Heger, 2014-05-27 16:55 +0200: Anonymous inner classes aren't being returned by the ReflectiveType.getMemberTypes() method anymore. - 2720184478b7: Jan Vrany, 2014-05-30 08:55 +0100: Fix in ReflectiveField.getConstant() - make field accessible if it is not. - e4470b7efc3b: Jan Vrany, 2014-05-30 09:03 +0100: Made ReflectiveField.getConstant() return always NotAConstant. - b63dbae22813: Jan Vrany, 2014-05-30 09:04 +0100: Moved CompilerAdapterTests to from src to src-tests - ba69147aea97: Jan Vrany, 2014-06-02 14:54 +0100: Better error message for VM-thrown ArrayStoreException. - e4b35ecfc645: Jan Vrany, 2014-06-02 14:58 +0100: Oops. remove Context>>arg1Index from extensions list. - c09dc2c6937b: Jan Vrany, 2014-06-02 16:38 +0200: Fix in JavaRelease - correctly detect OpenJDK6 on Linux. - ffe44966a226: Jan Vrany, 2014-06-02 15:56 +0100: Merged e4b35ecfc645 and c09dc2c6937b - 546aadb1fee1: Jan Vrany, 2014-06-02 18:30 +0200: Implemented sun.net.PortConfig.getLower0/getHigher0 natives. - b4fa505f93c5: Jan Vrany, 2014-06-04 09:52 +0100: Increated timeout for JUnit/Testlet tests. - 93cf25f66530: Jan Vrany, 2014-06-04 10:30 +0100: Do not create JavaClassAccessor for `JAVA java lang Object`-style class references. - cc0ea0656186: Jan Vrany, 2014-06-12 12:12 +0100: Fixed bug #77: Ignore unhandled ThreadDeath exceptions. - c1a47c6796fc: Jan Vrany, 2014-06-12 16:07 +0100: Increated per-process stack size limit for Groocy 2.x.x - 81791eb890eb: Jan Vrany, 2014-06-13 08:43 +0100: Bugfix in GroovyEvaluator: properly wrap primitive values. - 553b1c08b6b1: Jan Vrany, 2014-06-13 15:46 +0100: Bugfix in JavaLintService>>unregister: call super unregister at the end of the unregister method. - 012cc8eddb86: Jan Vrany, 2014-06-25 11:03 +0100: Use Semaphore>>waitWithTimeoutMs:state: instead of copy'paste version of waitWithTimeoutMs: - 4eaeba9fa910: Jan Vrany, 2014-06-25 13:58 +0100: Java source highlughter refactoring. - 72765a504e7c: Tomáš Heger, 2014-06-03 22:13 +0200: Removed unused imports. - a0139792a8cd: Tomáš Heger, 2014-06-03 22:17 +0200: Methods usable to actually dump IBinaryTypes added to IBinaryDumper -> it's executable now. Output directory is expected as the first argument, names of the classes to be dumped as the following arguments. - f25781926cca: Tomáš Heger, 2014-06-24 00:53 +0200: IBinaryDumper modified so it can dump classes from jar files. It accepts an arbitrary number of parameters - the first one is supposed to be a directory used for output and the rest are supposed to be class names and/or jar files. - e7b9ceda9923: Jan Vrany, 2014-07-02 17:53 +0100: Make ReflectiveType#getSuperclassName() to return java.lang.Object for interfaces. - fb9e5936daec: Jan Vrany, 2014-07-02 17:58 +0100: Do not dump properties known to differ for ReflectiveType and ClassReader by default. - 490a1b914f93: Jan Vrany, 2014-07-02 23:09 +0100: Renamed IBinaryDumper to BinaryDumper as I prefix denotes interface. - ade0060d3c12: Jan Vrany, 2014-07-08 12:55 +0100: Added tag expecco_2_7_0 for changeset 4eaeba9fa910 - ee329fef15db: Jan Vrany, 2014-07-10 13:54 +0100: Merged 490a1b914f93 and e35f2fac0337 - 2f2937ea3f03: Jan Vrany, 2014-07-10 16:48 +0100: Merged ade0060d3c12 and ee329fef15db - defac61e541c: Jan Vrany, 2014-07-07 23:48 +0100: stx.libjava.tools.environment.Environment.java cleanup. - 4dbc3b22d078: Jan Vrany, 2014-07-08 00:16 +0100: Fix in Environment#isPackage() - conservatively return true. - 04c5d3e67c13: Jan Vrany, 2014-07-11 16:42 +0100: Fixed ReflectiveMethod#getGenericSignature() for constructors. - e683134b3617: Jan Vrany, 2014-07-11 16:44 +0100: BinaryDumper improvements - 3aa14b90dacd: Jan Vrany, 2014-07-15 13:07 +0100: Removed code for flushing shared compiler Environment. - f041babfda85: Claus Gittinger, 2014-05-09 15:06 +0200: fixed apple-jdk searchForSourcePath (should return strings, - 7f36435f79c9: Claus Gittinger, 2014-05-29 13:12 +0200: comment characters - 36bab0a3c02b: Claus Gittinger, 2014-05-29 13:14 +0200: comment strings - f9fe8892084a: Claus Gittinger, 2014-05-29 20:31 +0200: comment strings - e8002e2c2fd9: cg, 2014-07-10 16:34 +0200: no message - a37928cf9a1b: cg, 2014-07-10 16:45 +0200: Merge - 47fda38729e0: Claus Gittinger, 2014-07-10 16:46 +0200: merge - 8f159d8e0749: Claus Gittinger, 2014-07-10 16:47 +0200: merge - b95b1843ab38: Claus Gittinger, 2014-07-18 18:30 +0200: filename vs. string - 0d4ba716d325: Jan Vrany, 2014-07-19 10:32 +0100: Merged 3aa14b90dacd and b95b1843ab38 - 21134786ad33: Jan Vrany, 2014-07-13 22:02 +0100: Environment renamed to ReflectiveEnvrionment to match naming of other classes. - 3ae04adf796f: Jan Vrany, 2014-07-19 02:01 +0100: Oops, fixed ReflectiveType#getGenericSignature() - 770c76797564: Jan Vrany, 2014-07-20 02:41 +0100: ReflectiveEnvironment#isPackage() refactored to scan classpath for packages. - fb5aefff7ae5: Jan Vrany, 2014-07-20 21:46 +0100: ReflectiveEnvironmnt#isPackage() now consult a list of classes loaded by given ClassLoader. - fb47f223848a: Jan Vrany, 2014-07-24 20:56 +0100: Merged 0d4ba716d325 and fb5aefff7ae5 - 26dd7e06c4bb: Jan Vrany, 2014-07-24 21:18 +0100: Removed classFileBytes from JavaClass. - a95e78d1d7dc: Jan Vrany, 2014-07-25 00:08 +0100: Speed optimization in ReflectiveEnvironment#isPackage() - 87cedea6290e: Jan Vrany, 2014-07-25 00:51 +0100: Got rid of JavaZipSupport. Inflater/Deflater made public. - 243dcc6b3220: Jan Vrany, 2014-07-25 01:52 +0100: Optimized java.util.zip.ZipFile#getNextEntry() - 79cde29be713: Jan Vrany, 2014-07-25 09:23 +0100: Another speed optimization in ReflectiveEnvironment#isPackage() - 99e1b2bde5de: Jan Vrany, 2014-07-25 09:53 +0100: Fix in JavaMapInspectorView (use #binaryName instead of #name) - d7978de50434: Jan Vrany, 2014-07-25 10:08 +0100: For Java objects, use standars Java toString() as value string in inspectors. - a80e78c59918: Jan Vrany, 2014-07-25 10:11 +0100: Make JavaClass>>nameWithoutNameSpacePrefix returning the lastName. - 19acb606dd69: Jan Vrany, 2014-07-28 11:49 +0100: Merged 79cde29be713 and a80e78c59918 - 2d3e5574157a: Jan Vrany, 2014-07-28 21:17 +0100: Removed jdtcore from stx:libjava/benchmark dependencies. - a725721c7855: Jan Vrany, 2014-07-28 22:40 +0100: Fix in JavaSyntaxHighlighter - resolve types even if class does not exist yet. - 3611c3493dbc: Jan Vrany, 2014-07-28 23:49 +0100: Introduced package annotation stx.libjava.annotations.Package. - 9003a9074b2c: Jan Vrany, 2014-07-30 16:34 +0100: Renamed ReflectiveEnvironment#packages to cachedIsPackageResults. Added more comments. - 945bee015640: Jan Vrany, 2014-07-31 09:30 +0100: Made JavaClass>>package returning Smalltalk/X package name from annotation, if annotated. - 3f605f43f795: Jan Vrany, 2014-08-01 14:25 +0100: Fixed JavaRelease>>validateJavaVersionString: - d9a3d685c8b9: Jan Vrany, 2014-08-01 14:27 +0100: Force a garbage collect after each run of classreader benchmark. - 304d3543242f: Jan Vrany, 2014-08-03 23:28 +0100: Cleanup in ReflectiveEnvironment: more comments & logging. - 603fdba602c4: Jan Vrany, 2014-08-03 18:16 +0100: Fixed annotation support in reflective environment (getValue() and standard tag bits) - 5260fddf10f6: Jan Vrany, 2014-08-03 23:39 +0100: Merged 304d3543242f and 603fdba602c4 - b6bced0551a9: Jan Vrany, 2014-08-03 23:43 +0100: Merged d9a3d685c8b9 and 5260fddf10f6 - 7abed44f04cc: Jan Vrany, 2014-08-03 23:46 +0100: Merged 945bee015640 and b6bced0551a9 - 9aade8151557: Jan Vrany, 2014-08-04 00:38 +0100: Added JavaSourceFileWriter>>fileOut:on:withTimestamp:... - 0b6a9ff08acd: Jan Vrany, 2014-08-04 15:43 +0100: Class reading optimization [1/4]: optimize CharacterArray class>>decodeFromJavaUTF8: - d617b4590431: Jan Vrany, 2014-08-04 16:13 +0100: (Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:... - d44f099dcff0: Jan Vrany, 2014-08-04 16:47 +0100: Classr reading optimization [3/4]: Optimize JavaMethod class>>numArgsFromDescriptor: - a4ddeef7c5e9: Jan Vrany, 2014-08-04 17:12 +0100: Class reading optimization [4/4]: defer cache flushing at class initialization time. - 189c572dbe71: Jan Vrany, 2014-08-04 23:08 +0100: Fixed getDeclaringClass() native. - a63cf3e1042f: Jan Vrany, 2014-08-05 00:11 +0100: Merged 9aade8151557 and 189c572dbe71 - 3890b120ec7f: Jan Vrany, 2014-08-05 01:02 +0100: Little tweak in ReflectiveEnvironment - a3cb415bc22b: Jan Vrany, 2014-08-05 09:27 +0100: Merged a63cf3e1042f and 3890b120ec7f - 185bbb8910e8: Jan Vrany, 2014-08-05 11:57 +0100: Fixed native java.lang.Class.getEnclosingMethod0 - ea55682eefe7: Jan Vrany, 2014-08-05 12:03 +0100: Align JavaClass>>enclosingClass with java.lang.Class.getEnclosingClass() - 4284af836b5d: Jan Vrany, 2014-08-05 20:42 +0100: Merged ea55682eefe7 and a4ddeef7c5e9 - 959071100332: Jan Vrany, 2014-08-05 21:57 +0100: Merged a3cb415bc22b and 4284af836b5d - 6cb006c63c4a: Jan Vrany, 2014-08-05 22:41 +0100: Return enclusing class's package for inner classes. Make #owningClass to return enclosing class. - 5517d6a75d40: Jan Vrany, 2014-08-06 14:24 +0100: Fix in GroovyEvaluator: care for nil values of workspace variables. - b96f863a8500: Jan Vrany, 2014-08-07 01:49 +0100: Java lint service now do dry-compilation to get more accurate problem list. - 546065d4319b: Jan Vrany, 2014-08-07 10:32 +0100: Fixed off-by-one bug in AbstractVariableDeclaration>>startPosition / endPosition extensions. - c771a69d7f7d: Jan Vrany, 2014-08-07 12:41 +0100: Removed slot JavaClass#sourceFile. - caa15c28f3a1: Jan Vrany, 2014-08-07 14:42 +0100: Fixed bad bug in realoding - do not flush type when invalidating field ref. - d3094b384e55: Jan Vrany, 2014-08-08 07:36 +0100: Fix in JavaNativeMethod: compute line number by searching the source. - c38fcee7b0da: Jan Vrany, 2014-08-08 11:02 +0100: Fixes bad bug in Java thread handling that caused memory/resource leak. - 1f63ee2cdd97: Jan Vrany, 2014-08-11 01:19 +0100: Fixed JavaClass>>fileOutAs: - 1d977d2d3abb: Jan Vrany, 2014-08-11 01:55 +0100: es to ClassLoader#classes list. - 261bad2a9657: Jan Vrany, 2014-08-11 09:46 +0100: Fixes for class unloadfing: unload inner classes first. - 93a3efa06bd1: Jan Vrany, 2014-08-11 10:55 +0100: ReflectiveEnvironment#isPackage() refactored to provide better performance. - 19fc0c196e75: Jan Vrany, 2014-08-11 10:57 +0100: Fixed typo in comment in ASTNodeComparator - dac830f75266: Jan Vrany, 2014-08-11 10:57 +0100: Merged 19fc0c196e75 and 261bad2a9657 - 3aed12bd6638: Jan Vrany, 2014-08-11 12:23 +0100: Added Echo example. - 81e439368e3d: Jan Vrany, 2014-08-11 21:26 +0100: Added option to a JavaScanner to allow for runaway string constants. - 7940d8a38e51: Jan Vrany, 2014-08-12 09:42 +0100: Oops, added missing methods. - 79fe9b2d4932: Jan Vrany, 2014-08-12 11:15 +0100: Added ASTNodeFinder, a simple visitor to locate AST node based on position in source. - dce4fa6c6dad: Jan Vrany, 2014-08-12 11:16 +0100: Merged 79fe9b2d4932 and 7940d8a38e51 - 36c8ea432a7c: Jan Vrany, 2014-08-12 13:46 +0100: Fixes in syntax hibglighting - add support for line-based highlighting - 9e60100a47c6: Jan Vrany, 2014-08-12 22:40 +0100: Fix in JavaClass>>innerClassesIgnoreUnloaded: - also return anonymous classes. - a35cc585bb5a: Jan Vrany, 2014-08-12 23:09 +0100: Fix in JavaContext>>argsAndVars: do not strip receiver (this) from arg-and-vars - 4d120f1a64f1: Jan Vrany, 2014-08-14 08:54 +0100: Fixed native java.lang.Class.getDeclaredClasses0() - 7a4491b4b7eb: Jan Vrany, 2014-08-14 08:57 +0100: Added some (unimplemented) natives for OpenJDK7's java.nio.* - 1ce74dc95339: Jan Vrany, 2014-08-14 12:24 +0100: Fix for JavaSetInspectorView (after binaryName / name refactoring ) - 1ab5987f3982: Jan Vrany, 2014-08-14 12:50 +0100: Oops, fix for class reader - remember exception table. - 7bf7a8831ed9: Jan Vrany, 2014-08-14 12:55 +0100: Fixed assertions Java>>removeThread:for: - 5c9cb5b7a35b: Jan Vrany, 2014-08-14 16:00 +0100: Merged 7bf7a8831ed9 and 9e60100a47c6 - 6a5d85f29c3a: Jan Vrany, 2014-08-16 08:13 +0100: Fixes for reloading - c8b42e8c2d6c: Jan Vrany, 2014-08-17 08:46 +0100: Fix in reloading of a method with method-level breakpoint. - 2a7558e77d4d: Jan Vrany, 2014-09-17 17:13 +0100: Changed GroovyEvaluatorTests workspace tests to run headless. - 01aa5d9b5206: Jan Vrany, 2014-09-17 17:13 +0100: Fixed comment in INVOKESPECIALX tests. - 353f4a75d558: Jan Vrany, 2014-09-18 10:00 +0100: Eclipse project settings fixed (works on 4.4 Luna) - 4e707dec1e44: Jan Vrany, 2014-09-18 11:56 +0100: Fix in GroovyScanner: honour allowRunawayString - 422e32abb28d: Jan Vrany, 2014-09-18 16:13 +0100: Fix in Java: do not flush Threads dictionary when rebooting JVM - b340178eb595: Jan Vrany, 2014-09-18 16:59 +0100: Added JavaMetaclass>>topOwningClass - 769369f7b48c: Jan Vrany, 2014-10-10 11:56 +0100: Bugfix in JavaCodeBundle: handle correclt non-exisitng packages... - 0a8b9f03ffa5: Jan Vrany, 2014-10-11 23:21 +0100: Fixed class reloader in cases a top-level class has both, nested and anonymous classes. - 16a1b7c1eccc: Jan Vrany, 2014-10-11 23:25 +0100: Eclipse projects renamec to use dotted named. - 7bd0c3fb8bfb: Jan Vrany, 2014-10-27 22:26 +0000: Fix in JavaRelease class>>system - care for broken links - e3119602c69d: Jan Vrany, 2014-11-04 08:50 +0000: Eclipse project settings fixed (again, sigh) - 03cc67fbfd3d: Jan Vrany, 2014-11-04 09:21 +0000: Added variant of native Class.forName0 as used by OpenJDK 7u71. - da769ad115e1: Jan Vrany, 2014-11-04 16:51 +0000: Merged e3119602c69d and 03cc67fbfd3d - c2c8a670bb76: Tomáš Heger, 2014-07-17 00:00 +0200: IBinaryDumper now indicates the end of dumping. - f3b26e7e56ee: Tomáš Heger, 2014-07-23 22:36 +0200: Merged with Honza's changes. - f4240f7f424a: Tomas Heger, 2014-09-10 17:28 +0200: Merged f3b26e7e56ee and c8b42e8c2d6c. - d9c528c25924: Tomas Heger, 2014-09-10 18:11 +0200: java.lang.SafeVarargs added to the supported annotations. - 98d2f92fe05b: Tomas Heger, 2014-09-10 18:17 +0200: A bug in ReflectiveType.getMemberTypes() fixed. It now returns null instead of an empty array if there are no member types. This behaviour is in compliance with the specification in the IBinaryType interface. - 645964f5513e: Tomas Heger, 2014-09-10 18:21 +0200: BinaryDumper doesn't dump SourceName for anonymous classes anymore. - a3c96c7782f1: Tomas Heger, 2014-09-18 22:33 +0200: Method ReflectiveAnnotation.getXConstant() implemented. - 225b46c95c0d: Tomas Heger, 2014-10-03 16:43 +0200: BinaryDumper has new method of dumping objects. It dumps arrays' contents and ignores an actual hashcode of the object (replaces it with a constant string), which is useful when looking for differences in dumps. - 259a03474cc4: Tomas Heger, 2014-10-03 17:15 +0200: BinaryDumper's stringToDump() method improved. It now works for empty arrays and dumps arrays' types as well. - f48973e448ab: Tomas Heger, 2014-10-03 18:14 +0200: BinaryDumper now correctly dumps methods when <clinit> is there. - 4ff24f26a19e: Tomas Heger, 2014-10-13 17:14 +0200: New class ReflectiveUtils created. General methods getXConstant() and getFieldType() moved to the new class. These are methods used by various classes. - ba5d431a3b8c: Tomas Heger, 2014-10-21 16:10 +0200: Enclosing method dumping fixed. Now it's dumped on its own row as it should be. - 0e4e6b5a86c6: Tomas Heger, 2014-10-21 16:44 +0200: If a type (ReflectiveType instance) represents a local or anonymous class within a constructor, that constructor is now returned by the ReflectiveType.getEnclosingMethod() method. - 65569ad02b60: Jan Vrany, 2014-11-05 09:03 +0000: Merged da769ad115e1 and 0e4e6b5a86c6 - 69fc19f5e37d: Jan Vrany, 2014-11-04 13:58 +0000: For Windows JDK7, make sure TwoStackSocketImpl is used - dcaeeee3e396: Jan Vrany, 2014-11-05 11:01 +0000: Implemented natives for TwoStackPlainSocketImpl - c8b892ed8c91: Jan Vrany, 2014-11-05 11:45 +0000: Merged 65569ad02b60 and dcaeeee3e396 - c536d81240a9: Tomas Heger, 2014-11-07 10:42 +0100: The getFieldType() method refactored (the actual functionality moved to new method called getSigFromName()) and new method called getNameFromSig() added. - 60ac91f62d59: Tomas Heger, 2014-11-07 10:44 +0100: A config option (dumpRuntimeInvisibleAnnots) added. With this config option set to false (which is the default value) only annotations with RetentionPolicy.RUNTIME are dumped by the BinaryDumper. - 8ca0926cc281: Tomas Heger, 2014-11-10 16:23 +0100: Functionality to find out if the annotations should be dumped (in case that they're not runtime visible) moved to a new method which is also newly used for dumping parameter annotations. - 9d8b5fb04b41: Jan Vrany, 2014-11-11 21:01 +0100: Fixed ReflectiveAnnotation on JDK6 - 34baed88b792: Jan Vrany, 2014-11-11 21:02 +0100: Merged c8b892ed8c91 and 9d8b5fb04b41 - 7a2b5c67bc0f: Jan Vrany, 2014-11-13 00:25 +0100: Fixed getXConstant() for Enums - 31b5a49df0e0: Jan Vrany, 2014-11-13 00:35 +0100: Fixed ReflectiveElementValuePair for Enum values. - a19f06fa6f09: Jan Vrany, 2014-11-13 00:49 +0100: Fixed ReflectiveAnnotation for type java.lang.invoke.MethodHandle$PolymorphicSignature. - 881799d310e3: Jan Vrany, 2014-11-13 12:18 +0100: Intern all constant pool strings. - e35a94591cb1: Jan Vrany, 2014-11-14 10:32 +0100: Updates after JavaPackage has been moved to stx:libbasic - 31188d530b64: Jan Vrany, 2014-11-16 10:25 +0000: Merged 881799d310e3 and e35a94591cb1 - c56b4d5f0c52: Marcel Hlopko, 2014-11-23 18:45 +0000: README.md edited online with Bitbucket - 3188fcb8391d: Jan Vrany, 2014-11-26 16:45 +0000: Fix in JavaClassReader>>skipAttribute: - 821170928b31: Jan Vrany, 2014-11-21 09:02 +0000: Added tag expecco_2_7_0 for changeset 31188d530b64 - d95fd165e9e3: Jan Vrany, 2014-12-01 00:20 +0000: Update for recent OpenJDK6 - 12d89689d2f2: Jan Vrany, 2014-12-01 00:48 +0000: Merge - 90f0566d8145: Jan Vrany, 2014-12-04 20:56 +0000: Extracted readMagic to alow lazy loading of constant pool. - c56313e00930: Jakub Nesveda, 2014-12-07 13:16 +0100: typo fix - e48aed9570a9: Jakub Nesveda, 2014-12-07 13:17 +0100: cc - 19e3d2dac675: Jakub Nesveda, 2014-12-07 14:25 +0100: fixed JavaRelease >> displayString for non installed or not found java releases - 1d1b9d446dd6: Jakub Nesveda, 2014-12-07 15:08 +0100: Merge - 4ac115074bce: Jan Vrany, 2014-12-07 22:55 +0000: Fixes for JavaRelase>>displayString tests. - 3aaf43a51816: Jan Vrany, 2014-12-08 18:08 +0000: Extracted magic and version detection into separate methods - 76d4443744ed: Jan Vrany, 2014-12-08 23:03 +0000: JavaClass memory optimization (part 1) - 2cf782f380f2: Jan Vrany, 2014-12-03 15:29 +0000: JavaClass memory optimization (part 2) - 10163a452c54: Jan Vrany, 2014-12-07 01:25 +0000: JavaClass memory optimization (part 3) - 14292924cac7: Jan Vrany, 2014-12-07 02:16 +0000: JavaClass memory optimization (part 4) - 1013708261a8: Jan Vrany, 2014-12-08 16:37 +0000: JavaClass memory optimization (part 5) - 87ec39ef23b8: Jan Vrany, 2014-12-08 10:26 +0000: Java settings cleanup (part 1): minor tweaks and fixes - 761c7bb5853c: Jan Vrany, 2014-12-09 14:49 +0000: Java settings cleanup (part 2): release settings refactored. - 8eb3481bfdcf: Jan Vrany, 2014-12-09 15:06 +0000: Java settings cleanup (part 3): removed user bundle editor - d9b55a42fa54: Jan Vrany, 2014-12-09 16:18 +0000: Merged 8eb3481bfdcf and 1013708261a8 - 61e9df43f8a4: Jan Vrany, 2014-12-10 09:06 +0000: Sigh, more fixes for JavaRelease>>displayString tests. - ca8cb260a3d0: Jan Vrany, 2014-12-11 00:44 +0000: Fix in JavaRelease class>>system - 1155c0d79d45: Jan Vrany, 2014-12-12 00:33 +0000: Fixed JavaClass#innerClasses, added #anonynousClasses - 777478bcd3f9: Jan Vrany, 2014-12-12 03:12 +0000: Fix in JavaSyntaxHighlighter: do resolve classes... - af659e602072: Jan Vrany, 2014-12-16 01:08 +0000: Fixes for class unloading. - ac4ecd6e586c: Jan Vrany, 2014-12-16 02:05 +0000: Minor clieanup in tools tests. - d85c559c01c6: Jan Vrany, 2014-12-16 02:42 +0000: Fixed bug in ReflectiveEnvironment#isPackage() - 8bbc18b95b78: Jan Vrany, 2014-12-16 02:49 +0000: Added JavaLintAnnotation - required by recent CodeView2 - cf7c55662e21: Jan Vrany, 2014-12-16 02:56 +0000: Merged d85c559c01c6 and 8bbc18b95b78 - b0f4e406b42d: Jan Vrany, 2014-12-17 01:20 +0000: Fix in flushing Java - flush smalltalk-to-java thread object mapping... - a467328c29fd: Jan Vrany, 2014-12-20 01:47 +0100: Fix in flushing Java - flush all dynamic proxies - b3526f83c2ff: Tomas Heger, 2014-11-16 15:08 +0100: Fixed ReflectiveUtils.getXConstant() for Classes. - 7bc74064acf3: Tomas Heger, 2014-11-18 22:54 +0100: Member filtering implemented. - ac4ade238e90: Tomas Heger, 2014-11-19 18:25 +0100: ReflectiveElementValuePair.getValue() fixed for Constant values. - 186065c6ada4: Tomas Heger, 2014-11-19 18:27 +0100: NullPointerException bug fixed in BinaryDumper.stringToDump() - bdc3f443e3c0: Tomas Heger, 2014-11-19 18:37 +0100: BinaryDumper.stringToDump() returns "null" instead of "" if null is given as a parameter. - c9cb51667da1: Tomas Heger, 2014-11-21 21:39 +0100: ReflectiveElementValuePair class tests added. - b78cacf5e303: Tomas Heger, 2014-12-11 22:47 +0100: Tests for getConstant() and getModifiers() added. - 490bd00c692c: Tomas Heger, 2014-12-11 22:53 +0100: BinaryDumper.stringToDump() now returns a String "null" for runtime invisible annotation (if the relevant config option is used). - ec683302163c: Tomas Heger, 2014-12-18 22:30 +0100: Fixed two bugs related to annotations (java.lang.annotation.Target hack improved and the problem with element-value pairs with the default value solved) - b0871eb73fd2: Tomas Heger, 2015-01-01 13:54 +0100: Minor refactoring of ReflectiveUtils. No funcionality changes. - 264b56c86880: Tomas Heger, 2015-01-04 11:25 +0100: Static variable that is no longer needed was removed from ReflectiveField. - cdab5cc716a7: Jan Vrany, 2014-12-17 00:08 +0000: Fixed bad bug in URL to to File conversion... - 00320742d075: Jan Vrany, 2015-01-05 11:00 +0100: Merged a467328c29fd and cdab5cc716a7 - 740ba227611d: Jan Vrany, 2015-01-05 11:04 +0100: Merged 00320742d075 and 264b56c86880 - a58245c0e83a: Jan Vrany, 2015-01-05 17:10 +0100: Updated copyright notices. - d9297d724fa0: Jan Vrany, 2015-01-06 11:01 +0100: Fix for D116331: Do not write to a changefile when compiling new native method - a373d416ae8c: Jan Vrany, 2015-01-11 08:03 +0000: Fix in JavaClass>>annotations - 3f9968ddacf8: Jan Vrany, 2015-01-14 11:19 +0000: Ant build files refactoring (part 1) - 327e493d2688: Jan Vrany, 2015-01-19 17:08 +0100: Ant build files refactoring (part 2) - 4c3b0badaa5f: Jan Vrany, 2015-01-20 09:42 +0100: Oops, fixed endless recursion in JavaClass>>innerClasses... - b14c58b2876c: Jan Vrany, 2015-01-20 10:41 +0100: Oops, moved stray reloading-related methods from stx:libjava/experiments to stx:libjava. - ee36f2088d60: Jan Vrany, 2015-01-20 10:49 +0100: JavaClassReloaderTests moved from stx:libjava/experiments to stx:libjava - 7aa6c098fb82: Jan Vrany, 2015-01-21 09:09 +0100: Repository cleanup (1/7): removed esug2012 and thesis directories. - 81e0e61fa317: Jan Vrany, 2015-01-21 09:30 +0100: Repository cleanup (2/7): removed smaCC directory. - 297cc823a07a: Jan Vrany, 2015-01-21 10:02 +0100: Repository cleanup (3/7): removed obsolete eclipse projects. - acdda45271f7: Jan Vrany, 2015-01-21 11:28 +0100: Repository cleanup (4/7): moved mauve source to stx:libjava/mauve/java where it belongs - 08a79331ec58: Jan Vrany, 2015-01-21 13:19 +0100: Repository cleanup (5/7): made stx:libjava/tests a full Smalltalk/X package. - fd5013aca049: Jan Vrany, 2015-01-21 13:46 +0100: Repository cleanup (6/7): moved Mauve test suite under stx:libjava/tests - 1dd84eba684a: Jan Vrany, 2015-01-21 15:50 +0100: Repository cleanup (7/7): removed docs/todo.txt - 23451a6823b1: Jan Vrany, 2015-01-22 21:31 +0100: More Java AST utilities. - e8d92a1c50f3: Jan Vrany, 2015-01-23 14:49 +0100: Updated Apache POI to 3.11 - 0f2df59e58e2: Tomas Heger, 2015-01-09 21:41 +0100: Shell script for easier launching of BinaryDumper added. - 77aa10f9e436: Tomas Heger, 2015-01-09 21:41 +0100: Many tests for the whole reflective environment added as well as some mock classes used by the tests. - a29efdbbfad2: Jan Vrany, 2015-01-27 10:14 +0000: Updated to Groovy 2.1.9 - a3ad7164f528: Jan Vrany, 2015-01-27 10:34 +0000: Groovy and JUnit .jars commited to repository. - 34b4fea6dd4f: Jan Vrany, 2015-01-27 10:45 +0000: Merged a3ad7164f528 and 77aa10f9e436 - a6358ca80d11: convert-repo, 2015-01-27 21:07 +0000: update tags - a3407cf1cd0d: Jan Vrany, 2015-01-27 22:34 +0000: Merged 34b4fea6dd4f and a6358ca80d11 - cb6c15e66bed: Jan Vrany, 2015-01-28 00:49 +0000: Temporary workaround to make tests running in eXept builds.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
 COPYRIGHT (c) 2003 by Claus Gittinger
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
	      All Rights Reserved
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
 hereby transferred.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
"{ Package: 'stx:libjava/tools' }"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
Object subclass:#JavaScannerBase
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
	instanceVariableNames:'typeArray actionArray source lineNr tokenType tokenStartPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
		tokenEndPosition tokenLineNr numberRadix numberScale hereChar
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
    17
		peekChar peekChar2 requestor saveComments tokenValue
3101
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
    18
		scaledMantissaValue parserFlags comments reportNewLine
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
    19
		reportComments'
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
	classVariableNames:'Warnings'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
	poolDictionaries:''
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
	category:'Languages-Java-Parser'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
JavaScannerBase class instanceVariableNames:'TypeArray ActionArray KeywordTable'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
 No other class instance variables are inherited by this class.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
!JavaScannerBase class methodsFor:'documentation'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
copyright
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
 COPYRIGHT (c) 2003 by Claus Gittinger
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
	      All Rights Reserved
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
 This software is furnished under a license and may be used
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
 only in accordance with the terms of that license and with the
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
 inclusion of the above copyright notice.   This software may not
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
 be provided or otherwise made available to, or used by, any
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
 other person.  No title to or ownership of the software is
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
 hereby transferred.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
!JavaScannerBase class methodsFor:'initialization'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
initialize
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    "initialize the classes defaults. Typically, these are changed
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
     later in the 'private.rc' file."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
"/    ScannerError isLoaded ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
"/        ScannerError autoload
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
"/    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
"/    EmptySourceNotification notifierString:'empty source given to evaluate'.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
    Warnings := false.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    "ActionArray := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
     TypeArray := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
     self initialize
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
    "Modified: / 15-03-2012 / 00:05:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
setupActions
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
    "initialize the scanners tables - these are used to dispatch
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
     into scanner methods as characters are read"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    self subclassResponsibility
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
"/    |block|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
"/
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
"/    ActionArray := Array new:256.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
"/    TypeArray := Array new:256.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
"/
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
"/    block := [:s :char | s nextNumber].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
"/    ($0 asciiValue) to:($9 asciiValue) do:[:index |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
"/        ActionArray at:index put:block
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
"/    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
"/
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
"/    block := [:s :char | s nextIdentifier].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
"/    ($a asciiValue) to:($z asciiValue) do:[:index |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
"/        ActionArray at:index put:block
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
"/    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
"/    ($A asciiValue) to:($Z asciiValue) do:[:index |
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
"/        ActionArray at:index put:block
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
"/    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
"/    ActionArray at:$_ asciiValue put:block
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
"/
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
!JavaScannerBase class methodsFor:'instance creation'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
for:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
    "create & return a new scanner reading from aStringOrStream"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
    ^ (super new) initializeFor:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
    "Modified: 23.5.1997 / 12:08:42 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
new
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
    "create & return a new scanner"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
    ^ self basicNew initialize.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
    "Modified: / 23.5.1997 / 12:08:42 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
    "Created: / 26.5.1999 / 12:02:16 / stefan"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
!JavaScannerBase class methodsFor:'Signal constants'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
emptySourceNotificationSignal
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    ^ EmptySourceNotification
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
    "Created: / 16.5.1998 / 15:55:14 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
errorSignal
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
    ^ ScannerError
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    "Created: / 16.5.1998 / 15:55:14 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
scannerErrorSignal
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    ^ ScannerError
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
    "Created: / 16.5.1998 / 15:55:14 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
warningSignal
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
    ^ ScannerWarning
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
    "Created: / 16.5.1998 / 15:55:14 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
!JavaScannerBase class methodsFor:'defaults'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
warnings
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
    "return true, if any warnings are to be shown"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
    ^ Warnings
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
warnings:aBoolean
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
    "this allows turning on/off all warnings; the default is on.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
     You can turn off warnings in your 'private.rc' file with
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
	 Compiler warnings:false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
    Warnings := aBoolean
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
    "Modified: 23.5.1997 / 12:03:05 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
!JavaScannerBase class methodsFor:'private accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
actionArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
    ^ ActionArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
keywordTable
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
    ^ KeywordTable
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
typeArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
    ^ TypeArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
!JavaScannerBase class methodsFor:'utility scanning'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
scanNumberFrom:aStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
    "utility - helper for Number>>readSmalltalkSyntaxFrom:"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
    ^ self basicNew scanNumberFrom:aStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
     |s|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
     s := '12345abcd' readStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
     Transcript showCR:(self scanNumberFrom:s).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   186
     Transcript showCR:(s upToEnd).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
     |s|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
     s := '16rffffxabcd' readStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
     Transcript showCR:(self scanNumberFrom:s).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
     Transcript showCR:(s upToEnd).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
     |s|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
     s := '1.2345abcd' readStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
     Transcript showCR:(self scanNumberFrom:s).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
     Transcript showCR:(s upToEnd).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
     |s|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
     s := '1.abcd' readStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
     Transcript showCR:(self scanNumberFrom:s).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
     Transcript showCR:(s upToEnd).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
    "Modified: / 18.6.1998 / 23:10:39 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
!JavaScannerBase methodsFor:'Compatibility - ST80'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
endOfLastToken
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
    "return the position of the token which was just read.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
     This method was required by some PD program.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
     It is not maintained and may be removed without notice."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
    ^ source position
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
    "Modified: 23.5.1997 / 12:14:27 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
scan:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
    "initialize the scanner: set the source-stream and
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
     preread the first token"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
    self initializeFor:aStringOrStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
    self nextToken
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
    "Created: / 30.10.1997 / 16:59:39 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
scanToken
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
    "read the next token from my input stream"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
    ^ self nextToken
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
    "Created: / 30.10.1997 / 17:00:16 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
scanTokens:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
    "return a collection of symbolic tokens from the passed input"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   245
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   246
    |tokens|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
    self initializeFor:aStringOrStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   249
    tokens := OrderedCollection new.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   250
    self nextToken.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   251
    [tokenValue notNil] whileTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
	tokens add:tokenValue.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
	self nextToken
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   254
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   255
    ^ tokens
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   256
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   257
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
     Scanner new
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
	scanTokens:'Boolean subclass:#True
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   260
				instanceVariableNames:''''
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   261
				classVariableNames:''''
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   262
				poolDictionaries:''''
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   263
				category:''Kernel-Objects''
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
	'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
    "Modified: 20.6.1997 / 18:22:58 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
!JavaScannerBase methodsFor:'accessing'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
actionArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
    ^ actionArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   275
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   276
actionArray:something
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
    actionArray := something.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   278
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
comments
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
    "if saveComments is on:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
      returns the collection of collected comments (so far)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
      clears the internal collection for the next access"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   284
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   285
    |ret|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   286
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
   287
    ret := comments ? #().
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
   288
    comments := nil.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   289
    ^ ret
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   290
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   291
    "Created: 20.4.1996 / 20:07:01 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   292
    "Modified: 23.5.1997 / 12:14:45 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   294
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
lineNumber
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
    "the current line number (in the stream)"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   297
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
    ^ lineNr
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   300
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
newSourceStream:aStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
    source := aStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
    self nextToken.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
    "Created: / 29.10.1998 / 21:59:33 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
numberRadix
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
    "the radix of the previously scanned number"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
    ^ numberRadix
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   313
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
parserFlags:something
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   315
    parserFlags := something.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   316
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   317
3101
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   318
reportNewLine
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   319
    ^ reportNewLine
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   320
!
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   321
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   322
reportNewLine:aBoolean
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   323
    "When set to true, a #NewLine token is generated for each new line character.
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   324
     If false, new line is treaded as whitespace"
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   325
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   326
    reportNewLine := aBoolean.
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   327
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   328
    "Modified (comment): / 12-05-2014 / 14:50:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   329
!
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   330
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   331
saveComments:aBoolean
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   332
    "toggle to turn on/off comment remembering"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   333
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   334
    saveComments := aBoolean
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   335
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   336
    "Created: 20.4.1996 / 20:03:56 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   337
    "Modified: 23.5.1997 / 12:14:49 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   338
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   339
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   340
sourceStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   341
    ^ source
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
    "Created: 20.4.1996 / 19:59:58 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
token
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
    "the previously scanned token"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
    "/ generated lazily ...
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
    self halt.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
tokenEndPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
    "the previously scanned tokens last character position"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
    ^ tokenEndPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
tokenLineNumber
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
    "the previously scanned tokens line number"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
    ^ tokenLineNr
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
2883
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   365
tokenName
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   366
    "the value (string or number) of the previously scanned token"
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   367
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   368
    ^ tokenValue
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   369
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   370
    "Created: / 22-10-2013 / 02:15:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   371
!
781c4bed22d0 Added JavaScannerBase>>#tokenName for compativility with smalltalk Scanner.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2881
diff changeset
   372
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
tokenStartPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374
    "the previously scanned tokens first character position"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   375
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   376
    ^ tokenStartPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   377
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   378
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   379
tokenType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   380
    "the type (symbolic) of the previously scanned token"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   381
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   382
    ^ tokenType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   383
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   384
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   385
tokenValue
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   386
    "the value (string or number) of the previously scanned token"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   387
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   388
    ^ tokenValue
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   389
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   390
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   391
typeArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   392
    ^ typeArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   393
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   394
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   395
typeArray:something
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   396
    typeArray := something.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   397
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   398
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   399
!JavaScannerBase methodsFor:'error handling'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   400
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   401
correctableError:message position:pos1 to:pos2
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   402
    "report an error which can be corrected by compiler -
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   403
     return non-false, if correction is wanted (there is more than
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   404
     true/false returned here)"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   405
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   406
    |correctIt|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   407
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   408
    requestor isNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   409
"/        self showErrorMessage:message position:pos1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   410
	correctIt := false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   411
    ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   412
	correctIt := requestor correctableError:message position:pos1 to:pos2 from:self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   413
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   414
    ^ correctIt
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   415
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   416
    "Created: / 13.5.1998 / 16:45:56 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   417
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   418
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   419
errorMessagePrefix
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   420
    ^ 'Error:'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   421
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   422
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   423
ignoreWarnings
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   424
    ^ Warnings == false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   425
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   426
    "Modified: / 14-03-2012 / 22:36:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   427
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   428
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   429
lastTokenLineNumber
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   430
    "return the line number of the token which was just read."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   431
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   432
    ^ tokenLineNr
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   433
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   434
    "Created: 8.11.1996 / 18:46:36 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   435
    "Modified: 23.5.1997 / 12:16:12 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   436
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   437
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   438
notifyError:aMessage position:position to:endPos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   439
    "notify requestor of an error - if there is no requestor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   440
     put it on the transcript. Requestor is typically the CodeView
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   441
     in which the accept/doIt was triggered, or the PositionableStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   442
     which does the fileIn. The requestor may decide how to highlight the
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   443
     error (and/or to abort the compile).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   444
     Return the result passed back by the requestor."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   445
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   446
    requestor isNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   447
	self showErrorMessage:aMessage position:position.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   448
	^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   449
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   450
    ^ requestor error:aMessage position:position to:endPos from:self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   451
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   452
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   453
notifyWarning:aMessage position:position to:endPos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   454
    "notify requestor of an warning - if there is no requestor
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   455
     put it on the transcript.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   456
     Return the result passed back by the requestor."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   457
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   458
    |warn|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   459
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   460
    self ignoreWarnings ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   461
	requestor isNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   462
	    warn := ScannerWarning new.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   463
	    warn startPosition:position.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   464
	    warn endPosition:endPos.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   465
	    warn lineNumber:tokenLineNr.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   466
	    warn errorString:((self warningMessagePrefix) , ' ' , aMessage).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   467
	    warn raiseRequest.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   468
	    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   469
	].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   470
	^ requestor warning:aMessage position:position to:endPos from:self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   471
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   472
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   473
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   474
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   475
parseError:aMessage
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   476
    "report an error"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   477
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   478
    ^ self parseError:aMessage position:tokenStartPosition to:nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   479
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   480
    "Created: / 13.5.1998 / 16:45:13 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   481
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   482
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   483
parseError:aMessage position:position
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   484
    "report an error"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   485
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   486
    ^ self parseError:aMessage position:position to:nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   487
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
    "Created: / 13.5.1998 / 16:45:05 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   490
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   491
parseError:aMessage position:position to:endPos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   492
    "report an error"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   493
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   494
    |m|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   495
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   496
    m := (self errorMessagePrefix) , ' ' , (aMessage ? '???').
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   497
    self notifyError:m position:position to:endPos.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   498
    ^ false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   499
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   500
    "Created: / 13.5.1998 / 16:44:55 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   501
    "Modified: / 28.9.1998 / 19:29:27 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   502
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   503
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   504
showErrorMessage:aMessage position:pos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   505
    "show an errormessage on the Transcript"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   506
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   507
    Transcript showCR:(pos printString , ' [line: ' , tokenLineNr printString , '] ' , aMessage)
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   508
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   509
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
syntaxError:aMessage
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
    "a syntax error happened - position is not known"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   513
    ^ self syntaxError:aMessage position:tokenStartPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
syntaxError:aMessage position:position
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
    "a syntax error happened - only start position is known"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   518
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   519
    ^ self syntaxError:aMessage position:position to:nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   520
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   521
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   522
syntaxError:aMessage position:position to:endPos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   523
    "a syntax error happened"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   524
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
    |err|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   526
2881
a4c9642a6a67 Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   527
    err := ParseError new.
a4c9642a6a67 Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   528
    err errorMessage:((self errorMessagePrefix) , ' ' , aMessage)
a4c9642a6a67 Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   529
        startPosition:tokenStartPosition
a4c9642a6a67 Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   530
        endPosition:tokenEndPosition.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   531
    err lineNumber:tokenLineNr.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   532
    err raiseRequest
2881
a4c9642a6a67 Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   533
a4c9642a6a67 Bugfix in JavaScannerBase>>:syntaxError:position:to: - raise ParseError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2731
diff changeset
   534
    "Modified: / 21-10-2013 / 09:51:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   535
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   536
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   537
warning:aMessage
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   538
    "a warning - position is not known"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   539
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   540
    ^ self warning:aMessage position:tokenStartPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   541
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   542
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   543
warning:aMessage position:position
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   544
    "a warning - only start position is known"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   545
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   546
    ^ self warning:aMessage position:position to:nil
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   547
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   548
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   549
warning:aMessage position:position to:endPos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   550
    "a warning"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   551
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   552
    ^ self notifyWarning:((self warningMessagePrefix) , ' ' , aMessage) position:position to:endPos
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   553
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   554
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
warningMessagePrefix
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   556
    ^ 'Warning:'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   557
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   558
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   559
!JavaScannerBase methodsFor:'general scanning'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   560
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   561
scanPositionsFor:aTokenString inString:aSourceString
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   562
    "scan aSourceString for occurrances of aTokenString.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   563
     Return a collection of start positions.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   564
     Added for VW compatibility (to support syntax-highlight)."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   565
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   566
    |searchType searchToken positions t|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   567
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   568
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   569
     first, look what kind of token we have to search for
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   570
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   571
    self initializeFor:(ReadStream on:aTokenString).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   572
    self nextToken.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   573
    searchType := tokenType.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   574
    searchToken := tokenValue.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   575
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   576
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   577
     start the real work ...
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   578
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   579
    self initializeFor:(ReadStream on:aSourceString).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   580
    positions := OrderedCollection new.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   581
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   582
    [(t := self nextToken) ~~ #EOF] whileTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   583
	searchType == t ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   584
	    (searchToken isNil or:[tokenValue = searchToken]) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   585
		positions add:tokenStartPosition.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   586
	    ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   587
	]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   588
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   589
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   590
    ^ positions
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   591
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   592
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   593
     Scanner new scanPositionsFor:'hello' inString:'foo bar hello baz hello helloWorld'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   594
     Scanner new scanPositionsFor:'3.14' inString:'foo 3.145 bar hello 3.14 baz hello 3.14 ''3.14'''
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   595
     Scanner new scanPositionsFor:'''3.14''' inString:'foo 3.145 bar hello 3.14 baz hello 3.14 ''3.14'' aaa'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   596
     Scanner new scanPositionsFor:'16' inString:'foo 16 bar hello 16r10 baz hello 2r10000'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   597
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   598
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   599
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   600
!JavaScannerBase methodsFor:'initialization'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   601
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   602
initialize
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   603
    "initialize the scanner"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   604
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   605
    "/actionArray notNil ifTrue:[ self halt ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   606
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   607
    saveComments := false.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   608
    parserFlags := ParserFlags new.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   609
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   610
    (actionArray := self class actionArray) isNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   611
        self class setupActions.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   612
        actionArray := self class actionArray
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   613
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   614
    typeArray := self class typeArray.
3101
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   615
    reportNewLine := false.
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   616
    reportComments := false.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   617
3101
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   618
    "Modified: / 12-05-2014 / 14:51:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   620
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   621
initializeFor:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   622
    "initialize the new scanner & prepare for reading from aStringOrStream"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   623
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   624
    self initialize.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   625
    self source:aStringOrStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   626
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   627
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   628
source:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   629
    "prepare for reading from aStringOrStream"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   630
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   631
    tokenStartPosition := 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   632
    tokenLineNr := lineNr := 1.
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
   633
    comments := nil.
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   634
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   635
    aStringOrStream isStream ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
	source := ReadStream on:aStringOrStream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
    ] ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
	source := aStringOrStream.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   640
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   641
    "Modified: / 26.5.1999 / 12:02:16 / stefan"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   643
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   644
!JavaScannerBase methodsFor:'private'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   645
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   646
addComment:comment
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   647
    saveComments ifTrue:[
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
   648
	comments isNil ifTrue:[
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
   649
	    comments := OrderedCollection with:comment
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   650
	] ifFalse:[
2678
c865275e48a7 Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2396
diff changeset
   651
	    comments add:comment
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   652
	]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   653
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   654
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   655
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   656
backupPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   657
    "if reading from a stream, at the end we might have read
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   658
     one token too many"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   659
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   660
    (tokenType == #EOF) ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   661
	source position:tokenStartPosition
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   662
    ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   663
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   664
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   665
beginComment
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   666
    ^ self
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   667
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   668
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   669
requestor:anObject
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   670
    "set the requestor to be notified about errors"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   671
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   672
    requestor := anObject
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   673
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   674
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   675
!JavaScannerBase methodsFor:'reading next token'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   676
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   677
atEnd
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   678
    "true if at the end"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   679
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   680
    ^ tokenType == #EOF.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   681
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   682
    "Created: / 30-04-2011 / 11:24:13 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   683
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   684
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   685
isCommentCharacter:aCharacter
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   686
    self subclassResponsibility
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   687
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   688
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   689
nextSingleCharacterToken:aCharacter
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   690
    "return a character token"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   691
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   692
    tokenEndPosition := tokenStartPosition.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   693
    tokenType := tokenValue := aCharacter.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   694
    hereChar notNil ifTrue:[source next].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   695
    ^ tokenType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   696
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   697
    "Modified: / 13.5.1998 / 15:10:23 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   698
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   699
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   700
nextToken
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   701
    "scan the next token from the source-stream;
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   702
     as a side effect, leave info in:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   703
        tokenType          - a symbol describing the kind of token
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   704
        token              - its value as string or number
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   705
        tokenStartPosition - the tokens first characters position in the input stream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   706
        tokenEndPosition   - the tokens last characters position in the input stream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   707
        tokenLineNr        - the tokens first characters lineNumber in the input stream
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   708
     returns the tokenType.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   709
    "
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   710
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   711
    |skipping actionBlock v ch tok|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   712
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   713
    [true] whileTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   714
        peekChar notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   715
            "/ kludge - should be called peekSym.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   716
            "/ used when xlating Foo.Bar into Foo::Bar
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   717
            peekChar isSymbol ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   718
                tokenValue := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   719
                tokenType := peekChar.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   720
                peekChar := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   721
                ^ tokenType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   722
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   723
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   724
            peekChar isSeparator ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   725
                peekChar == (Character cr) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   726
                    lineNr := lineNr + 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   727
                ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   728
                peekChar := peekChar2.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   729
                peekChar2 := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   730
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   731
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   732
        peekChar notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   733
            ch := peekChar.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   734
            peekChar := peekChar2.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   735
            peekChar2 := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   736
            hereChar := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   737
            tokenStartPosition := source position - 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   738
        ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   739
            skipping := true.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   740
            [skipping] whileTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   741
                hereChar := source skipSeparatorsExceptCR.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   742
                hereChar == (Character cr) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   743
                    lineNr := lineNr + 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   744
                    source next.
3101
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   745
                    reportNewLine ifTrue:[ 
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   746
                        tokenType := #NewLine.
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   747
                        tokenValue := Character cr.
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   748
                        tokenStartPosition := tokenEndPosition := source position - 1.
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   749
                        ^ tokenType
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   750
                    ].
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   751
                ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   752
                    hereChar == (Character return) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   753
                        source next.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   754
                    ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   755
                        (self isCommentCharacter:hereChar) ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   756
                            "start of a comment"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   757
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   758
                            self skipComment.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   759
                            hereChar := source peekOrNil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   760
                        ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   761
                            skipping := false
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   762
                        ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   763
                    ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   764
                ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   765
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   766
            hereChar isNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   767
                tokenValue := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   768
                tokenType := #EOF.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   769
                ^ tokenType
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   770
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   771
            ch := hereChar.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   772
            tokenStartPosition := source position.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   773
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   774
        tokenLineNr := lineNr.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   775
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   776
        (v := ch asciiValue) == 0 ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   777
            v := Character space codePoint
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   778
        ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   779
        actionBlock := actionArray at:v.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   780
        actionBlock notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   781
            tok := actionBlock value:self value:ch.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   782
            tok notNil ifTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   783
                ^ tok
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   784
            ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   785
        ] ifFalse:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   786
            self syntaxError:('invalid character: ''' , ch asString , ''' ',
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   787
                              '(' , v printString , ')')
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   788
                    position:tokenStartPosition to:tokenStartPosition.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   789
            source next.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   790
            tokenValue := nil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   791
            tokenType := #Error.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   792
            ^ #Error
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   793
        ]
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   794
    ].
3101
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   795
446b34b9a386 Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2883
diff changeset
   796
    "Modified: / 12-05-2014 / 14:53:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   797
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   798
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   799
skipComment
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   800
    self subclassResponsibility
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   801
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   802
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   803
!JavaScannerBase methodsFor:'reading next token - private'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   804
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   805
nextMantissa:radix
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   806
    "read the mantissa of a radix number.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   807
     Return post-decimal value (i.e. 0.xxxx); leave number of post-decimal
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   808
     digits in numberScale; scaled post-decimal value in scaledMantissaValue (xxx)."
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   809
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   810
    |nextChar value factor|
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   811
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   812
    value := scaledMantissaValue := 0.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   813
    factor := 1.0 / radix.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   814
    nextChar := source peekOrNil.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   815
    numberScale := 0.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   816
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   817
    [(nextChar notNil and:[nextChar isDigitRadix:radix])] whileTrue:[
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   818
	scaledMantissaValue := (scaledMantissaValue * radix) + (nextChar digitValue).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   819
	value := value + (nextChar digitValue * factor).
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   820
	factor := factor / radix.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   821
	numberScale := numberScale + 1.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   822
	nextChar := source nextPeek
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   823
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   824
    ^ value
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   825
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   826
    "Modified: / 5.3.1998 / 02:54:11 / cg"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   827
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   828
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   829
!JavaScannerBase class methodsFor:'documentation'!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   830
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   831
version_CVS
3360
1a8899091305 Merged with mercurial revision cb6c15e66be (594 changesets total)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 3101
diff changeset
   832
    ^ '$Header: /cvs/stx/stx/libjava/tools/JavaScannerBase.st,v 1.4 2015-01-28 02:12:02 vrany Exp $'
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   833
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   834
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   835
version_HG
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   836
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   837
    ^ '$Changeset: <not expanded> $'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   838
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   839
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   840
version_SVN
2731
13f5be2bf83b Merged d87e89dd5276 and fe83a843a7bf (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2711 2678
diff changeset
   841
    ^ 'Id'
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   842
! !
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   843
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   844
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   845
JavaScannerBase initialize!