Commit Graph

542 Commits

Author SHA1 Message Date
jan
c7505a12b0 should be union; we want to exclude dangling refs 2023-04-07 16:55:50 -07:00
jan
abef8771db fixes to subtree and lshift, as well as some cast() improvements 2023-04-07 16:48:40 -07:00
jan
f1baf8b577 oneshot available at toplevel 2023-04-07 16:33:59 -07:00
jan
355af43fe4 add @oneshot decorator 2023-04-07 16:33:23 -07:00
jan
e8b5c7dec8 lshift operator shouldn't special-case trees
Instead, just call .tops() if there are multiple cells, and fail if
there are multiple tops
2023-04-07 15:29:14 -07:00
jan
438b81e62e find_toplevel -> tops 2023-04-07 15:20:51 -07:00
jan
41409cf4f7 create no longer exists. Make mk() give similar ordering as mkpat() 2023-04-06 17:09:46 -07:00
jan
0a14325af8 fix return value 2023-04-06 17:06:41 -07:00
jan
5b1abf5f72 top is always a string 2023-04-06 17:06:13 -07:00
jan
463c41b62a cleanup 2023-04-06 17:03:31 -07:00
jan
62b82eb230 get rid of NamedPattern in favor of just returning a tuple 2023-04-06 16:52:01 -07:00
3e48cc7190 Drop ports when repeating 2023-03-31 13:35:18 -07:00
2364288ba7 port translation is already handled in Pattern 2023-03-31 13:34:49 -07:00
ddcd38674f drop ability to use python-gdsii 2023-03-19 10:18:01 -07:00
742058885f fix rounding 2023-03-19 10:17:37 -07:00
0917b02a31 str(namedpattern) should just return its name 2023-03-19 10:17:30 -07:00
c515ada2f8 updates to Pattern.polygonize() 2023-03-19 10:17:09 -07:00
68ac593270 update to newer ezdxf 2023-03-19 10:16:54 -07:00
e87b13c4eb Need to check against self, since we may add new conflicts as we go 2023-02-24 09:34:26 -08:00
f5d1fd2c29 Pipe-operator does not support forward references 2023-02-23 16:23:06 -08:00
28424be3db add polygon() and label() convenience methods 2023-02-23 13:42:26 -08:00
a710494dd8 use Self type 2023-02-23 13:37:34 -08:00
c9402500e2 modernize type annotations 2023-02-23 13:15:32 -08:00
dfd745a76b fix error message 2023-02-23 11:26:07 -08:00
23c64b4f63 remove per-shape polygonization state 2023-02-23 11:25:40 -08:00
7a4a96ff5f fixes based on mypy 2023-02-09 16:43:06 -08:00
3191866ce0 add prune_empty and delete() 2023-02-09 16:38:42 -08:00
8c42145e44 fixes/updates 2023-02-09 16:38:33 -08:00
1d720b6577 Drop ports by default 2023-02-08 09:26:44 -08:00
38a7ba6434 force 'wb' mode for gzipfile 2023-02-08 09:26:24 -08:00
2e8d06ad6e data_to_ports max_depth default to 0
Makes it more compatible with LazyLibrary -- with recursive approach, we
have to load all the subcells to run ports2data, but those subcells may
or may not exist (e.g. partial library, or maybe we've removed some
duplicates-to-be prior to merging with a different lib)
2023-02-08 08:51:30 -08:00
ea1a882c4e pass along library for bounds 2023-02-08 08:46:38 -08:00
ed8f2c1864 fix precache 2023-02-08 08:44:42 -08:00
492565c1a6 redo library merging 2023-02-08 08:44:36 -08:00
c6b8027b4d pass along tools 2023-02-08 08:44:17 -08:00
e8348dfa75 Make default quiet for underscores 2023-02-07 14:34:47 -08:00
81b381e031 always apply postprocess 2023-02-07 14:25:56 -08:00
cca6b90830 misc fixes 2023-02-07 14:24:34 -08:00
d079b44883 Revert "allow ports2data to take a tree"
This reverts commit 44f823c736.
LazyLibrary can't take Trees anymore, so no need for it.
2023-02-07 09:19:01 -08:00
1d649389a0 LazyLibrary should not contain Trees
altering itself during iteration is not a good idea
2023-02-06 19:01:42 -08:00
dc2c12c26f missing import 2023-02-06 19:00:56 -08:00
a1c4cdee1e fix type for __contains__ 2023-02-06 18:58:53 -08:00
44f823c736 allow ports2data to take a tree 2023-02-06 12:39:43 -08:00
9d466882a0 misc fixes 2023-02-06 12:11:53 -08:00
369bad9ae4 Only allow 1-sized Libraries 2023-02-04 09:28:53 -08:00
ee6d857cad Allow lshift to operate on any library. If only one name, return it, else None 2023-02-04 09:08:05 -08:00
5e2018a1a1 add missing functions to tree 2023-02-04 09:06:51 -08:00
5446a8c40b add Pather.mk() 2023-02-04 09:06:31 -08:00
a9188c5655 add name arg 2023-02-04 09:06:22 -08:00
05f327387e pather reorganization/clenaup 2023-02-04 09:05:34 -08:00