slint/internal/compiler
Milian Wolff df1dd3b6cf Use one central thread_local for builtin function types
Instead of occupying multiple TLS slots, introduce a single type
that stores all the builtin function types in members. Use a macro
to define this struct then, which allows us to use a nice DSL to
define these function types, reducing the boiler plate significantly.

The downside is that we no longer have the ability to easily share
semantically equivalent function types (e.g. for `Round`, `Ceil`
and `Floor` etc.). Doing so would require us to introdue a separate
name for these types, and then use external matching to map the
BuiltinFunctions to the reduced list of types. The performance impact
is minimal though, so this is not done to KISS.
2024-10-28 09:39:54 +01:00
..
generator Also wrap langtype::Type::Struct in an Rc 2024-10-28 09:39:54 +01:00
LICENSES Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
llr Refactor typeregister's BUILTIN_ENUMS => BUILTIN.enums 2024-10-28 09:39:54 +01:00
lookup Replace compiler dependency on css-color-parser crate 2024-07-29 13:13:53 +02:00
parser Fix parsing of unfinished import statement 2024-10-22 09:35:46 +02:00
parser-test-macro API review of the slint interpreter Compiler api 2024-07-05 17:20:08 +02:00
passes Refactor typeregister's BUILTIN_ENUMS => BUILTIN.enums 2024-10-28 09:39:54 +01:00
tests Wrap langtype::Type::{Callback,Function} data in an Rc 2024-10-28 09:39:54 +01:00
widgets Added rejected to TextInput (#6649) 2024-10-25 17:24:47 +02:00
build.rs Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
builtin_macros.rs Also wrap langtype::Type::Struct in an Rc 2024-10-28 09:39:54 +01:00
builtins.slint Added rejected to TextInput (#6649) 2024-10-25 17:24:47 +02:00
Cargo.toml Fix order of glyphs in BitmapFont's glyphs when using SDFs 2024-10-23 19:36:51 +02:00
diagnostics.rs compiler: Remove version info from SourceFile again 2024-08-21 16:55:13 +02:00
embedded_resources.rs Signed DistanceField font rendering in swrenderer 2024-10-23 09:12:30 +02:00
expression_tree.rs Use one central thread_local for builtin function types 2024-10-28 09:39:54 +01:00
fileaccess.rs Widget style: simplify -light/-dark handling 2024-08-20 16:55:15 +02:00
generator.rs Also wrap langtype::Type::Struct in an Rc 2024-10-28 09:39:54 +01:00
langtype.rs Also use Rc for langtype::Type::Array 2024-10-28 09:39:54 +01:00
layout.rs Also wrap langtype::Type::Struct in an Rc 2024-10-28 09:39:54 +01:00
lexer.rs Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
lib.rs Speed up SDF generation 2024-10-23 09:12:30 +02:00
literals.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
llr.rs Optimization: improve expression inlining 2024-08-23 17:17:15 +02:00
load_builtins.rs Wrap langtype::Type::{Callback,Function} data in an Rc 2024-10-28 09:39:54 +01:00
lookup.rs Refactor typeregister's BUILTIN_ENUMS => BUILTIN.enums 2024-10-28 09:39:54 +01:00
namedreference.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
object_tree.rs Also use Rc for langtype::Type::Array 2024-10-28 09:39:54 +01:00
parser.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
passes.rs TextInput: use selection colors from palette (#6381) 2024-09-30 10:56:22 +00:00
pathutils.rs Use SmolStr for parts of pathutils to remove temporary allocations 2024-10-17 18:04:58 +02:00
README.md Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
typeloader.rs PopupWindow: added close-policy property (#6614) 2024-10-24 09:27:39 +00:00
typeregister.rs Move thread local types from typeregister into BUILTIN 2024-10-28 09:39:54 +01:00

The Slint Compiler Library

NOTE: This library is an internal crate of the Slint project. This crate should not be used directly by applications using Slint. You should use the slint crate instead.

WARNING: This crate does not follow the semver convention for versioning and can only be used with version = "=x.y.z" in Cargo.toml.