islands/PPInputEnds.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 08 Sep 2015 03:20:10 +0100
changeset 545 ecf04090fc50
parent 454 a9cd5ea7cc36
permissions -rw-r--r--
Forge Monticello ancestry when exporting .mcz Generate ancestry based in Mercurial history and individual package's splice maps.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
387
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/petitparser/islands' }"
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
454
a9cd5ea7cc36 Portability: fixes for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 389
diff changeset
     3
"{ NameSpace: Smalltalk }"
a9cd5ea7cc36 Portability: fixes for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 389
diff changeset
     4
387
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
PPParser subclass:#PPInputEnds
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:''
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'PetitIslands-Parsers'
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
!PPInputEnds methodsFor:'as yet unclassified'!
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
acceptsEpsilon
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
	^ true
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
!
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
exampleOn: aStream 
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	aStream nextPutAll: '#End Of Input#'
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
!
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
isNullable 
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
	^ true
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
!
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
parseOn: aPPContext
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	(aPPContext atEnd) ifFalse:
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
	[
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
		^ PPFailure message: 'end of input expected' context: aPPContext.
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
	].
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
	^ #inputEnds
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
! !
e2b2ccaa4de6 Commited a island parser support (MC package PetitIslands)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33