264 END CHARMAP |
280 END CHARMAP |
265 |
281 |
266 " |
282 " |
267 ! ! |
283 ! ! |
268 |
284 |
|
285 !MS_Hebrew methodsFor:'encoding & decoding'! |
|
286 |
|
287 decode:codeArg |
|
288 "Automagically generated by generateCode - do not modify. |
|
289 Decode from my encoding into unicode." |
|
290 |
|
291 |code "{ Class: SmallInteger }"| |
|
292 |
|
293 code := codeArg. |
|
294 code <= 16r7F ifTrue:[ ^ code ]. |
|
295 code > 16rFE ifTrue:[ |
|
296 ^ self decodingError. |
|
297 ]. |
|
298 [ |
|
299 |t| |
|
300 t := #( |
|
301 "16r0080" 16r0000 " invalid " |
|
302 "16r0081" 16r0000 " invalid " |
|
303 "16r0082" 16r201A " SINGLE LOW-9 QUOTATION MARK " |
|
304 "16r0083" 16r0192 " LATIN SMALL LETTER F WITH HOOK " |
|
305 "16r0084" 16r201E " DOUBLE LOW-9 QUOTATION MARK " |
|
306 "16r0085" 16r2026 " HORIZONTAL ELLIPSIS " |
|
307 "16r0086" 16r2020 " DAGGER " |
|
308 "16r0087" 16r2021 " DOUBLE DAGGER " |
|
309 "16r0088" 16r0000 " invalid " |
|
310 "16r0089" 16r2030 " PER MILLE SIGN " |
|
311 "16r008A" 16r0000 " invalid " |
|
312 "16r008B" 16r2039 " SINGLE LEFT-POINTING ANGLE QUOTATION MARK " |
|
313 "16r008C" 16r0000 " invalid " |
|
314 "16r008D" 16r0000 " invalid " |
|
315 "16r008E" 16r0000 " invalid " |
|
316 "16r008F" 16r0000 " invalid " |
|
317 "16r0090" 16r0000 " invalid " |
|
318 "16r0091" 16r2018 " LEFT SINGLE QUOTATION MARK " |
|
319 "16r0092" 16r2019 " RIGHT SINGLE QUOTATION MARK " |
|
320 "16r0093" 16r201C " LEFT DOUBLE QUOTATION MARK " |
|
321 "16r0094" 16r201D " RIGHT DOUBLE QUOTATION MARK " |
|
322 "16r0095" 16r2022 " BULLET " |
|
323 "16r0096" 16r2013 " EN DASH " |
|
324 "16r0097" 16r2014 " EM DASH " |
|
325 "16r0098" 16r0000 " invalid " |
|
326 "16r0099" 16r2122 " TRADE MARK SIGN " |
|
327 "16r009A" 16r0000 " invalid " |
|
328 "16r009B" 16r203A " SINGLE RIGHT-POINTING ANGLE QUOTATION MARK " |
|
329 "16r009C" 16r0000 " invalid " |
|
330 "16r009D" 16r0000 " invalid " |
|
331 "16r009E" 16r0000 " invalid " |
|
332 "16r009F" 16r0000 " invalid " |
|
333 "16r00A0" 16r00A0 " NO-BREAK SPACE " |
|
334 "16r00A1" 16r0000 " invalid " |
|
335 "16r00A2" 16r00A2 " CENT SIGN " |
|
336 "16r00A3" 16r00A3 " POUND SIGN " |
|
337 "16r00A4" 16r00A4 " CURRENCY SIGN " |
|
338 "16r00A5" 16r00A5 " YEN SIGN " |
|
339 "16r00A6" 16r00A6 " BROKEN BAR " |
|
340 "16r00A7" 16r00A7 " SECTION SIGN " |
|
341 "16r00A8" 16r00A8 " DIAERESIS " |
|
342 "16r00A9" 16r00A9 " COPYRIGHT SIGN " |
|
343 "16r00AA" 16r00D7 " MULTIPLICATION SIGN " |
|
344 "16r00AB" 16r00AB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
345 "16r00AC" 16r00AC " NOT SIGN " |
|
346 "16r00AD" 16r00AD " SOFT HYPHEN " |
|
347 "16r00AE" 16r00AE " REGISTERED SIGN " |
|
348 "16r00AF" 16r203E " OVERLINE " |
|
349 "16r00B0" 16r00B0 " DEGREE SIGN " |
|
350 "16r00B1" 16r00B1 " PLUS-MINUS SIGN " |
|
351 "16r00B2" 16r00B2 " SUPERSCRIPT TWO " |
|
352 "16r00B3" 16r00B3 " SUPERSCRIPT THREE " |
|
353 "16r00B4" 16r00B4 " ACUTE ACCENT " |
|
354 "16r00B5" 16r00B5 " MICRO SIGN " |
|
355 "16r00B6" 16r00B6 " PILCROW SIGN " |
|
356 "16r00B7" 16r00B7 " MIDDLE DOT " |
|
357 "16r00B8" 16r00B8 " CEDILLA " |
|
358 "16r00B9" 16r00B9 " SUPERSCRIPT ONE " |
|
359 "16r00BA" 16r00F7 " DIVISION SIGN " |
|
360 "16r00BB" 16r00BB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
361 "16r00BC" 16r00BC " VULGAR FRACTION ONE QUARTER " |
|
362 "16r00BD" 16r00BD " VULGAR FRACTION ONE HALF " |
|
363 "16r00BE" 16r00BE " VULGAR FRACTION THREE QUARTERS " |
|
364 "16r00BF" 16r0000 " invalid " |
|
365 "16r00C0" 16r0000 " invalid " |
|
366 "16r00C1" 16r0000 " invalid " |
|
367 "16r00C2" 16r0000 " invalid " |
|
368 "16r00C3" 16r0000 " invalid " |
|
369 "16r00C4" 16r0000 " invalid " |
|
370 "16r00C5" 16r0000 " invalid " |
|
371 "16r00C6" 16r0000 " invalid " |
|
372 "16r00C7" 16r0000 " invalid " |
|
373 "16r00C8" 16r0000 " invalid " |
|
374 "16r00C9" 16r0000 " invalid " |
|
375 "16r00CA" 16r0000 " invalid " |
|
376 "16r00CB" 16r0000 " invalid " |
|
377 "16r00CC" 16r0000 " invalid " |
|
378 "16r00CD" 16r0000 " invalid " |
|
379 "16r00CE" 16r0000 " invalid " |
|
380 "16r00CF" 16r0000 " invalid " |
|
381 "16r00D0" 16r0000 " invalid " |
|
382 "16r00D1" 16r0000 " invalid " |
|
383 "16r00D2" 16r0000 " invalid " |
|
384 "16r00D3" 16r0000 " invalid " |
|
385 "16r00D4" 16r0000 " invalid " |
|
386 "16r00D5" 16r0000 " invalid " |
|
387 "16r00D6" 16r0000 " invalid " |
|
388 "16r00D7" 16r0000 " invalid " |
|
389 "16r00D8" 16r0000 " invalid " |
|
390 "16r00D9" 16r0000 " invalid " |
|
391 "16r00DA" 16r0000 " invalid " |
|
392 "16r00DB" 16r0000 " invalid " |
|
393 "16r00DC" 16r0000 " invalid " |
|
394 "16r00DD" 16r0000 " invalid " |
|
395 "16r00DE" 16r0000 " invalid " |
|
396 "16r00DF" 16r2017 " DOUBLE LOW LINE " |
|
397 "16r00E0" 16r05D0 " HEBREW LETTER ALEF " |
|
398 "16r00E1" 16r05D1 " HEBREW LETTER BET " |
|
399 "16r00E2" 16r05D2 " HEBREW LETTER GIMEL " |
|
400 "16r00E3" 16r05D3 " HEBREW LETTER DALET " |
|
401 "16r00E4" 16r05D4 " HEBREW LETTER HE " |
|
402 "16r00E5" 16r05D5 " HEBREW LETTER VAV " |
|
403 "16r00E6" 16r05D6 " HEBREW LETTER ZAYIN " |
|
404 "16r00E7" 16r05D7 " HEBREW LETTER HET " |
|
405 "16r00E8" 16r05D8 " HEBREW LETTER TET " |
|
406 "16r00E9" 16r05D9 " HEBREW LETTER YOD " |
|
407 "16r00EA" 16r05DA " HEBREW LETTER FINAL KAF " |
|
408 "16r00EB" 16r05DB " HEBREW LETTER KAF " |
|
409 "16r00EC" 16r05DC " HEBREW LETTER LAMED " |
|
410 "16r00ED" 16r05DD " HEBREW LETTER FINAL MEM " |
|
411 "16r00EE" 16r05DE " HEBREW LETTER MEM " |
|
412 "16r00EF" 16r05DF " HEBREW LETTER FINAL NUN " |
|
413 "16r00F0" 16r05E0 " HEBREW LETTER NUN " |
|
414 "16r00F1" 16r05E1 " HEBREW LETTER SAMEKH " |
|
415 "16r00F2" 16r05E2 " HEBREW LETTER AYIN " |
|
416 "16r00F3" 16r05E3 " HEBREW LETTER FINAL PE " |
|
417 "16r00F4" 16r05E4 " HEBREW LETTER PE " |
|
418 "16r00F5" 16r05E5 " HEBREW LETTER FINAL TSADI " |
|
419 "16r00F6" 16r05E6 " HEBREW LETTER TSADI " |
|
420 "16r00F7" 16r05E7 " HEBREW LETTER QOF " |
|
421 "16r00F8" 16r05E8 " HEBREW LETTER RESH " |
|
422 "16r00F9" 16r05E9 " HEBREW LETTER SHIN " |
|
423 "16r00FA" 16r05EA " HEBREW LETTER TAV " |
|
424 "16r00FB" 16r0000 " invalid " |
|
425 "16r00FC" 16r0000 " invalid " |
|
426 "16r00FD" 16r200E " LEFT-TO-RIGHT MARK " |
|
427 "16r00FE" 16r200F " RIGHT-TO-LEFT MARK " |
|
428 ) at:(code - 16r7F). |
|
429 t == 0 ifFalse:[^ t]. |
|
430 ^ self decodingError. |
|
431 ] value. |
|
432 ! |
|
433 |
|
434 encode:unicodeArg |
|
435 "Automagically generated by generateCode - do not modify. |
|
436 Encode from unicode into my encoding." |
|
437 |
|
438 |unicode "{ Class: SmallInteger }"| |
|
439 |
|
440 unicode := unicodeArg. |
|
441 unicode <= 16r7F ifTrue:[ ^ unicode ]. |
|
442 unicode > 16r2122 ifTrue:[ |
|
443 ^ self encodingError. |
|
444 ]. |
|
445 unicode <= 16r9F ifTrue:[ |
|
446 ^ self encodingError |
|
447 ]. |
|
448 unicode <= 16r5EA ifTrue:[ |
|
449 unicode <= 16r192 ifTrue:[ |
|
450 unicode <= 16rF7 ifTrue:[ |
|
451 unicode <= 16rD7 ifTrue:[ |
|
452 unicode <= 16rBE ifTrue:[ |
|
453 [ |
|
454 |t| |
|
455 t := #[ |
|
456 "16r00A0" 16rA0 " NO-BREAK SPACE " |
|
457 "16r00A1" 16r00 " invalid " |
|
458 "16r00A2" 16rA2 " CENT SIGN " |
|
459 "16r00A3" 16rA3 " POUND SIGN " |
|
460 "16r00A4" 16rA4 " CURRENCY SIGN " |
|
461 "16r00A5" 16rA5 " YEN SIGN " |
|
462 "16r00A6" 16rA6 " BROKEN BAR " |
|
463 "16r00A7" 16rA7 " SECTION SIGN " |
|
464 "16r00A8" 16rA8 " DIAERESIS " |
|
465 "16r00A9" 16rA9 " COPYRIGHT SIGN " |
|
466 "16r00AA" 16r00 " invalid " |
|
467 "16r00AB" 16rAB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
468 "16r00AC" 16rAC " NOT SIGN " |
|
469 "16r00AD" 16rAD " SOFT HYPHEN " |
|
470 "16r00AE" 16rAE " REGISTERED SIGN " |
|
471 "16r00AF" 16r00 " invalid " |
|
472 "16r00B0" 16rB0 " DEGREE SIGN " |
|
473 "16r00B1" 16rB1 " PLUS-MINUS SIGN " |
|
474 "16r00B2" 16rB2 " SUPERSCRIPT TWO " |
|
475 "16r00B3" 16rB3 " SUPERSCRIPT THREE " |
|
476 "16r00B4" 16rB4 " ACUTE ACCENT " |
|
477 "16r00B5" 16rB5 " MICRO SIGN " |
|
478 "16r00B6" 16rB6 " PILCROW SIGN " |
|
479 "16r00B7" 16rB7 " MIDDLE DOT " |
|
480 "16r00B8" 16rB8 " CEDILLA " |
|
481 "16r00B9" 16rB9 " SUPERSCRIPT ONE " |
|
482 "16r00BA" 16r00 " invalid " |
|
483 "16r00BB" 16rBB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
484 "16r00BC" 16rBC " VULGAR FRACTION ONE QUARTER " |
|
485 "16r00BD" 16rBD " VULGAR FRACTION ONE HALF " |
|
486 "16r00BE" 16rBE " VULGAR FRACTION THREE QUARTERS " |
|
487 ] at:(unicode - 16r9F). |
|
488 t == 0 ifFalse:[^ t]. |
|
489 ^ self encodingError |
|
490 ] value. |
|
491 ]. |
|
492 unicode <= 16rD6 ifTrue:[ |
|
493 ^ self encodingError |
|
494 ]. |
|
495 ^ "16r00D7" 16r00AA " MULTIPLICATION SIGN " |
|
496 ]. |
|
497 unicode <= 16rF6 ifTrue:[ |
|
498 ^ self encodingError |
|
499 ]. |
|
500 ^ "16r00F7" 16r00BA " DIVISION SIGN " |
|
501 ]. |
|
502 unicode <= 16r191 ifTrue:[ |
|
503 ^ self encodingError |
|
504 ]. |
|
505 ^ "16r0192" 16r0083 " LATIN SMALL LETTER F WITH HOOK " |
|
506 ]. |
|
507 unicode <= 16r5CF ifTrue:[ |
|
508 ^ self encodingError |
|
509 ]. |
|
510 ^ #[ |
|
511 "16r05D0" 16rE0 " HEBREW LETTER ALEF " |
|
512 "16r05D1" 16rE1 " HEBREW LETTER BET " |
|
513 "16r05D2" 16rE2 " HEBREW LETTER GIMEL " |
|
514 "16r05D3" 16rE3 " HEBREW LETTER DALET " |
|
515 "16r05D4" 16rE4 " HEBREW LETTER HE " |
|
516 "16r05D5" 16rE5 " HEBREW LETTER VAV " |
|
517 "16r05D6" 16rE6 " HEBREW LETTER ZAYIN " |
|
518 "16r05D7" 16rE7 " HEBREW LETTER HET " |
|
519 "16r05D8" 16rE8 " HEBREW LETTER TET " |
|
520 "16r05D9" 16rE9 " HEBREW LETTER YOD " |
|
521 "16r05DA" 16rEA " HEBREW LETTER FINAL KAF " |
|
522 "16r05DB" 16rEB " HEBREW LETTER KAF " |
|
523 "16r05DC" 16rEC " HEBREW LETTER LAMED " |
|
524 "16r05DD" 16rED " HEBREW LETTER FINAL MEM " |
|
525 "16r05DE" 16rEE " HEBREW LETTER MEM " |
|
526 "16r05DF" 16rEF " HEBREW LETTER FINAL NUN " |
|
527 "16r05E0" 16rF0 " HEBREW LETTER NUN " |
|
528 "16r05E1" 16rF1 " HEBREW LETTER SAMEKH " |
|
529 "16r05E2" 16rF2 " HEBREW LETTER AYIN " |
|
530 "16r05E3" 16rF3 " HEBREW LETTER FINAL PE " |
|
531 "16r05E4" 16rF4 " HEBREW LETTER PE " |
|
532 "16r05E5" 16rF5 " HEBREW LETTER FINAL TSADI " |
|
533 "16r05E6" 16rF6 " HEBREW LETTER TSADI " |
|
534 "16r05E7" 16rF7 " HEBREW LETTER QOF " |
|
535 "16r05E8" 16rF8 " HEBREW LETTER RESH " |
|
536 "16r05E9" 16rF9 " HEBREW LETTER SHIN " |
|
537 "16r05EA" 16rFA " HEBREW LETTER TAV " |
|
538 ] at:(unicode - 16r5CF). |
|
539 ]. |
|
540 unicode <= 16r200D ifTrue:[ |
|
541 ^ self encodingError |
|
542 ]. |
|
543 unicode <= 16r203E ifTrue:[ |
|
544 [ |
|
545 |t| |
|
546 t := #[ |
|
547 "16r200E" 16rFD " LEFT-TO-RIGHT MARK " |
|
548 "16r200F" 16rFE " RIGHT-TO-LEFT MARK " |
|
549 "16r2010" 16r00 " invalid " |
|
550 "16r2011" 16r00 " invalid " |
|
551 "16r2012" 16r00 " invalid " |
|
552 "16r2013" 16r96 " EN DASH " |
|
553 "16r2014" 16r97 " EM DASH " |
|
554 "16r2015" 16r00 " invalid " |
|
555 "16r2016" 16r00 " invalid " |
|
556 "16r2017" 16rDF " DOUBLE LOW LINE " |
|
557 "16r2018" 16r91 " LEFT SINGLE QUOTATION MARK " |
|
558 "16r2019" 16r92 " RIGHT SINGLE QUOTATION MARK " |
|
559 "16r201A" 16r82 " SINGLE LOW-9 QUOTATION MARK " |
|
560 "16r201B" 16r00 " invalid " |
|
561 "16r201C" 16r93 " LEFT DOUBLE QUOTATION MARK " |
|
562 "16r201D" 16r94 " RIGHT DOUBLE QUOTATION MARK " |
|
563 "16r201E" 16r84 " DOUBLE LOW-9 QUOTATION MARK " |
|
564 "16r201F" 16r00 " invalid " |
|
565 "16r2020" 16r86 " DAGGER " |
|
566 "16r2021" 16r87 " DOUBLE DAGGER " |
|
567 "16r2022" 16r95 " BULLET " |
|
568 "16r2023" 16r00 " invalid " |
|
569 "16r2024" 16r00 " invalid " |
|
570 "16r2025" 16r00 " invalid " |
|
571 "16r2026" 16r85 " HORIZONTAL ELLIPSIS " |
|
572 "16r2027" 16r00 " invalid " |
|
573 "16r2028" 16r00 " invalid " |
|
574 "16r2029" 16r00 " invalid " |
|
575 "16r202A" 16r00 " invalid " |
|
576 "16r202B" 16r00 " invalid " |
|
577 "16r202C" 16r00 " invalid " |
|
578 "16r202D" 16r00 " invalid " |
|
579 "16r202E" 16r00 " invalid " |
|
580 "16r202F" 16r00 " invalid " |
|
581 "16r2030" 16r89 " PER MILLE SIGN " |
|
582 "16r2031" 16r00 " invalid " |
|
583 "16r2032" 16r00 " invalid " |
|
584 "16r2033" 16r00 " invalid " |
|
585 "16r2034" 16r00 " invalid " |
|
586 "16r2035" 16r00 " invalid " |
|
587 "16r2036" 16r00 " invalid " |
|
588 "16r2037" 16r00 " invalid " |
|
589 "16r2038" 16r00 " invalid " |
|
590 "16r2039" 16r8B " SINGLE LEFT-POINTING ANGLE QUOTATION MARK " |
|
591 "16r203A" 16r9B " SINGLE RIGHT-POINTING ANGLE QUOTATION MARK " |
|
592 "16r203B" 16r00 " invalid " |
|
593 "16r203C" 16r00 " invalid " |
|
594 "16r203D" 16r00 " invalid " |
|
595 "16r203E" 16rAF " OVERLINE " |
|
596 ] at:(unicode - 16r200D). |
|
597 t == 0 ifFalse:[^ t]. |
|
598 ^ self encodingError |
|
599 ] value. |
|
600 ]. |
|
601 unicode <= 16r2121 ifTrue:[ |
|
602 ^ self encodingError |
|
603 ]. |
|
604 ^ "16r2122" 16r0099 " TRADE MARK SIGN " |
|
605 ! ! |
|
606 |
269 !MS_Hebrew class methodsFor:'documentation'! |
607 !MS_Hebrew class methodsFor:'documentation'! |
270 |
608 |
271 version |
609 version |
272 ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__MS_Hebrew.st,v 1.3 2004-03-09 21:59:46 cg Exp $' |
610 ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__MS_Hebrew.st,v 1.4 2005-03-31 18:48:50 cg Exp $' |
273 ! ! |
611 ! ! |