| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
These will eventually be paired with the sections file parser to create
a set of sections.
|
|
|
|
|
| |
There aren't architecture-specific naming for binaries for g-i on Windows,
so don't bother checking for them.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, due to the way that Visual Studio 2010+ projects are handled,
the "install" project does not re-build upon changes to the sources, as it
does not believe that its dependencies have changed, although the changed
sources are automatically recompiled. This means that if a part or more
of the solution does not build, or if the sources need some other fixes
or enhancements, the up-to-date build is not copied automatically, which
can be misleading.
Improve on the situation by forcing the "install" project to trigger its
rebuild, so that the updated binaries can be copied. This does trigger an
MSBuild warning, but having that warning is way better than not having an
up-to-date build, especially during testing and development.
|
|
|
|
|
| |
Add missing identfilter.py to EXTRA_DIST and correct spelling of
Identfilter-1.0-expected.gir.
|
|
|
|
|
|
|
|
|
| |
Add the command line flag --identifier-filter-cmd to g-ir-scanner which
allows running identifier names through a filtering shell command. The
identifier is sent as stdin to the filter command and expects a filtered
result written to stdout.
https://bugzilla.gnome.org/show_bug.cgi?706898
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=728409
|
| |
|
| |
|
|
|
|
|
|
|
| |
Clarify the meaning of 'may be null' in the docs: it refers to the value
of the argument itself, not the reference to the argument.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
| |
Add ANN_NULLABLE and ANN_OPTIONAL in the one (and only) other place that
ANN_ALLOW_NONE is mentioned...
|
|
|
|
|
| |
Now that Cancellable and AsyncReadyCallback are being correctly
recognised again, adjust the expected output of the Regress testcase.
|
|
|
|
|
|
|
| |
Add (nullable) and (optional) as recognised annotations in the same places that
(allow-none) is allowed. This should have been done in the previous
commits but the tests were passing because the only ill effect was that
a warning was issued.
|
|
|
|
|
|
|
| |
This reverts commit 0839e696e9fbc1942ac5c61054de3b47e9578152.
This was accidentally picked up by my 'git bz apply' against the bug as
I was getting ready to push the last set of changes.
|
|
|
|
|
|
|
|
| |
In the case that a parameter has not been explicitly annotated, the
value of node.direction will be None, not 'in'. Instead of comparing as
== 'in' we should therefore check for being != 'out'.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
| |
Parse the 'nullable' attribute on parameters and function return types.
Additionally, tweak the meaning of the 'allow-none' attribute. We now
only treat it as equivalent to 'nullable' for non-out parameters. For
out parameters, we treat it to mean the same as the already-recognised
'optional' parameter (which we only recently started actually using).
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
| |
Rename the "allow_none" parameter on internal/private structure ArgBlob
to "nullable".
This is a straight rename with no other changes.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
| |
Promote the 'nullable' field to the TypeContainer base class (which is
shared by Return and Parameter types).
Add .gir support for nullability on return values, both in the writer
and in the (scanner's) parser.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
| |
Add two new annotations, (nullable) and (optional).
(nullable) always means "the type of this value can also contain null".
(optional) always means "this out parameter can be ignored by passing
NULL to the C function".
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Record our internal 'nullable' and 'optional' attributes into the
written .gir file. It is now theoretically possible to express the
concept of an out parameter with a nullable type (although presently
there is no way to do this).
Modify our own internal parser (in the scanner) to understand the
newly-written attributes.
Update the expected output of the 'Regress-1.0.gir' test to account for
the new attributes.
Nothing else understands 'nullable' yet, but the girparser in the
typelib compiler already understands 'optional' and records a bit for it
in the typelib.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the 'allow_none' field on parameters with two separate fields:
'nullable' and 'optional'.
Currently, we use 'nullable' to mean the same thing as 'allow-none' for
normal (non-out) parameters. For out parameters, we use the 'optional'
field instead.
Note that the special case for GCancellable and GAsyncReadyCallback is
already guarded by a check for being an in parameter, so we always use
'nullable' here.
On the .gir writer side, we decide which variable to consult when
writing the allow-none attribute depending on the parameter direction.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We treat GCancellable and GAsyncReadyCallback as if they were always
tagged (allow-none) because these parameters universally allow %NULL to
be given as a value when they appear as in parameters on functions.
Unfortunately, the meaning of (allow-none) is different on out
parameters. There it means that you can give %NULL to ignore the return
value.
Limit this special case to only in parameters.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
|
|
|
| |
We assign node.allow_none in two separate cases:
- if the (allow-none) annotation was given
- for GCancellable and GAsyncReadyCallback, as special cases
Split the two up. This will simplify future commits.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
|
|
|
|
|
| |
The old annotationparser.py happily parsed this, but
giscanner/girwriter.py never serialized an allow-none
attribute to the .gir file and girepository/girparser.c
never looked for an allow-none attribute either.
https://bugzilla.gnome.org/show_bug.cgi?id=660879
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
| |
|
|
|
|
|
|
|
|
| |
Copy the .gir files that are bundled with g-i to build/ before trying to
compile the .gir's that were generated during the build process, so that
the compilation of these .gir's may succeed. Also, create the
share/gir-1.0 and lib/girepository-1.0 directories, if needed, before
trying to copy the .gir/.typelib files.
|
|
|
|
|
|
|
| |
The implementation as a method returning itself as its implemented
interface type.
https://bugzilla.gnome.org/show_bug.cgi?id=727824
|
|
|
|
|
|
|
| |
This should fix race conditions when multiple processes attempt to
access the cache concurrently.
https://bugzilla.gnome.org/show_bug.cgi?id=724886
|
|
|
|
|
|
| |
The -I flags for generating GIRepository-2.0.gir should use $(BASEDIR), not
%BASEDIR%, as we are not using a Windows .bat to generate the introspection
files.
|
| |
|
|
|
|
| |
Press the secret code too unlock the hidden bonus: GVariantDict!
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'ok' != 'return_value', and we never restore 'Returns:'.
At the same time, do the same fix for (out) parameters if the
return value is void, so this
void my_object_get_foo (MyObject *object, Foo *)
is turned into
function get_foo() : Foo
Returns: ....
|
| |
|
|
|
|
|
|
|
|
|
|
| |
GClosures are represented in gjs as JS functions for in
parameters, so it makes sense to use Function in place of
the boxed structure (which is also not part of the documentation)
Note that GClosures returned from C code are marshalled
as boxed types, but this is a gjs bug really, and JS code
should never touch them.
|
|
|
|
| |
They are enums after all.
|
|
|
|
|
|
| |
GValues are transparently marshalled by GJS, so you can
never use them as boxed (and they are not part of the
documentation as such).
|
|
|
|
|
| |
This was causing a "warning: function declaration isn't a
prototype" with strict-prototypes enabled.
|
|
|
|
|
|
| |
Add missing page needed for tests to run after commit 7027bb256
https://bugzilla.gnome.org/show_bug.cgi?id=725198
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use ParseState enum instead of a boolean for the ParseContexts embedded_type
flag. This allows specific tracking of the embedded type currently being
parsed which can now either be STATE_STRUCT_FIELD or STATE_CLASS_FIELD (or
allow for future expansion). Add ParseState::STATE_NONE as the default for
this field.
Fix GObject FieldBlob validation to take into account the sizeof
CallbackBlobs (copied from the struct validator).
Add static g_object_info_get_field_offset which parallels
g_struct_info_get_field_offset which is needed since callback fields may
vary in size.
https://bugzilla.gnome.org/show_bug.cgi?id=725198
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This shows up in the headers in FreeBSD's stdlib. Now I didn't add
anything to regress.h because I think that'd introduce an effective
hard dependency on a C11-capable compiler, unless we used #ifdef
trickery. But the problem with #ifdef is that the -expected.gir isn't
conditional.
https://bugzilla.gnome.org/show_bug.cgi?id=724851
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=724882
|
|
|
|
|
|
|
| |
Conform shlibs.py to the PEP8 standard. New additions were causing make
check to fail:
Fixed E211 whitespace before '('
Fixed E501 line too long (104 > 99 characters)
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
If a xref points to a node that was not visited, because it
was not introspectable, don't assume it has no parent. Instead,
try to fetch the parent from the node directly.
This is still wrong (the xref points nowhere because no page is
generated), but it looks less wrong.
If OTOH a xref points to a different namespace, generate the
link directly, because yelp-build is not capable of translating
it.
|
|
|
|
| |
Make sure to set the parent of the function
|
|
|
|
|
| |
Switch enum from a topic to a guide page, and include links to
all static methods.
|