! Copyright (C) 2006, 2007 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: assocs kernel sequences sets ; IN: graphs : add-vertex ( vertex edges graph -- ) [ nest adjoin ] curry with each ; inline : remove-vertex ( vertex edges graph -- ) [ at delete ] curry with each ; inline : closure ( vertex quot: ( vertex -- edges ) -- set ) HS{ } clone [ swap (closure) ] keep ; inline