Module: wine Branch: master Commit: ed21c294815d3e1eff9dca861f4af16096cc1ce7 URL: https://source.winehq.org/git/wine.git/?a=commit;h=ed21c294815d3e1eff9dca861...
Author: Rémi Bernon rbernon@codeweavers.com Date: Thu Feb 11 17:37:27 2021 +0100
widl: Support WinRT parameterized type parsing.
And add IVectorView<T> and IIterator<T> parameterized interfaces to windows.foundation.idl for illustration and future use. They won't generate any additional code until they are fully specialized.
This is a WIDL-specific feature, but MIDL has some magic knowledge of these Windows.Foundation.Collections interface templates, and we need a way to instruct WIDL about them too.
Having these interfaces declared in the IDL, guarded with __WIDL__ ifdef is easier and more flexible than re-creating the types by hand in WIDL source.
Signed-off-by: Rémi Bernon rbernon@codeweavers.com Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
include/windows.foundation.idl | 29 +++++++++++++++ tools/widl/expr.c | 2 ++ tools/widl/header.c | 8 +++-- tools/widl/parser.y | 82 +++++++++++++++++++++++++++++++++++------- tools/widl/typegen.c | 6 ++++ tools/widl/typelib.c | 2 ++ tools/widl/typetree.c | 39 ++++++++++++++++++++ tools/widl/typetree.h | 4 +++ tools/widl/widltypes.h | 9 +++++ 9 files changed, 166 insertions(+), 15 deletions(-)
Diff: https://source.winehq.org/git/wine.git/?a=commitdiff;h=ed21c294815d3e1eff9dc...