Tcl Library Source Code

Check-in [4bbe140a79]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2018 Conference, Houston/TX, US, Oct 15-19
Send your abstracts to tclconference@googlegroups.com
or submit via the online form by Aug 20.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:pt::peg::op `drop unrealizable` more conservative, ignore unreachable symbols as realizable. Tests pass.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256:4bbe140a79eec2efefe85b398bbac7100dc486f504d71cbf1f75b529a9fe9265
User & Date: andreask 2018-07-09 21:27:50
References
2018-07-09
21:29 Closed ticket [351b8b2f55]: Bug fixes on PT/PEG transformation operations plus 6 other changes artifact: 73e3142bf8 user: aku
Context
2018-07-19
19:31
Change the criterium for detecting if two circles touch - use the mean of the two radii Leaf check-in: 6124e077a8 user: arjenmarkus tags: trunk
2018-07-16
09:25
Create new branch named "pt-peg_op-tests-ssoberni" check-in: 9b2222e1ad user: ssoberni tags: pt-peg_op-tests-ssoberni
2018-07-09
21:41
ldap/ldapx <EF> Tkt [60160205fe] Extensions to the TLS handling of ldap(x) enabling the specification of all TLS options instead of the limited set we had before. Leaf check-in: 337c7e5654 user: andreask tags: ldap-60160205fe-tls
21:27
pt::peg::op `drop unrealizable` more conservative, ignore unreachable symbols as realizable. Tests pass. check-in: 4bbe140a79 user: andreask tags: trunk
21:17
Tkt [351b8b2f55]. Work branch integrated. check-in: 3720e40747 user: andreask tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to modules/pt/pt_peg_op.tcl.

1
2
3
4
5
6
7
8
9
...
316
317
318
319
320
321
322
323

324
325
326
327
328
329
330
# -*- tcl -*-
# Copyright (c) 2009 Andreas Kupries <andreas_kupries@sourceforge.net>

# Utility commands operating on parsing expressions.

# # ## ### ##### ######## ############# #####################
## Requirements

package require Tcl 8.5        ; # Required runtime.
................................................................................
	    return 1
	}
    }
}

proc ::pt::peg::op::drop::unrealizable {container} {

    set     all [$container nonterminals]

    lappend all {} ; # marker for start expression.

    set unrealizable \
	[struct::set difference \
	     $all [pt::peg::op realizable $container]]

    if {![llength $unrealizable]} return

|







 







|
>







1
2
3
4
5
6
7
8
9
...
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
# -*- tcl -*-
# Copyright (c) 2009-2018 Andreas Kupries <andreas_kupries@sourceforge.net>

# Utility commands operating on parsing expressions.

# # ## ### ##### ######## ############# #####################
## Requirements

package require Tcl 8.5        ; # Required runtime.
................................................................................
	    return 1
	}
    }
}

proc ::pt::peg::op::drop::unrealizable {container} {

    #set     all [$container nonterminals]
    set     all [::pt::peg::op reachable $container]
    lappend all {} ; # marker for start expression.

    set unrealizable \
	[struct::set difference \
	     $all [pt::peg::op realizable $container]]

    if {![llength $unrealizable]} return