Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:25
erlang
1812-erl_types-Use-a-more-compact-representatio...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 1812-erl_types-Use-a-more-compact-representation-for-some.patch of Package erlang
From 9eee7eb7753c80f08ef31687ef0c9a32750d839b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= <bjorn@erlang.org> Date: Sat, 5 Nov 2022 09:04:47 +0100 Subject: [PATCH 12/12] erl_types: Use a more compact representation for some types For a list, bitstring, and function, store a pair of types in a tuple instead of in list, saving one word. --- lib/dialyzer/src/erl_types.erl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/dialyzer/src/erl_types.erl b/lib/dialyzer/src/erl_types.erl index 8df38870c1..4675c65cea 100644 --- a/lib/dialyzer/src/erl_types.erl +++ b/lib/dialyzer/src/erl_types.erl @@ -310,15 +310,15 @@ arity = 0 :: arity(), struct :: erl_type()}). -define(atom(Set), #c{tag=?atom_tag, elements=Set}). --define(bitstr(Unit, Base), #c{tag=?binary_tag, elements=[Unit,Base]}). +-define(bitstr(Unit, Base), #c{tag=?binary_tag, elements={Unit,Base}}). -define(float, ?number(?any, ?float_qual)). -define(function(Domain, Range), #c{tag=?function_tag, - elements=[Domain, Range]}). + elements={Domain,Range}}). -define(identifier(Types), #c{tag=?identifier_tag, elements=Types}). -define(integer(Types), ?number(Types, ?integer_qual)). -define(int_range(From, To), ?integer(#int_rng{from=From, to=To})). -define(int_set(Set), ?integer(#int_set{set=Set})). --define(list(Types, Term, Size), #c{tag=?list_tag, elements=[Types,Term], +-define(list(Types, Term, Size), #c{tag=?list_tag, elements={Types,Term}, qualifier=Size}). -define(nil, #c{tag=?nil_tag}). -define(nonempty_list(Types, Term),?list(Types, Term, ?nonempty_qual)). -- 2.35.3
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor