forked from enlightenment/efl
eolian: remove @nullable keyword
This was an experiment that never properly took off and was never used by any generator. Its use was highly variable, so it could not be relied upon. We will still want to reverse the current behavior eventually (no null by default), but that will be done with eo file versioning in the future. @feature
This commit is contained in:
parent
34ef9c3139
commit
5ea0195661
|
@ -92,7 +92,6 @@ tests/eolian/data/nmsp1_class1.eo \
|
|||
tests/eolian/data/nmsp1_nmsp11_class2.eo \
|
||||
tests/eolian/data/nmsp2_class1.eo \
|
||||
tests/eolian/data/no_nmsp.eo \
|
||||
tests/eolian/data/null.eo \
|
||||
tests/eolian/data/object_impl.eo \
|
||||
tests/eolian/data/object_impl_add.eo \
|
||||
tests/eolian/data/override.eo \
|
||||
|
|
|
@ -370,7 +370,6 @@ ffi.cdef [[
|
|||
const Eolian_Expression *eolian_parameter_default_value_get(const Eolian_Function_Parameter *param);
|
||||
const Eolian_Documentation *eolian_parameter_documentation_get(const Eolian_Function_Parameter *param);
|
||||
Eina_Bool eolian_parameter_is_nonull(const Eolian_Function_Parameter *param_desc);
|
||||
Eina_Bool eolian_parameter_is_nullable(const Eolian_Function_Parameter *param_desc);
|
||||
Eina_Bool eolian_parameter_is_optional(const Eolian_Function_Parameter *param_desc);
|
||||
const Eolian_Type *eolian_function_return_type_get(const Eolian_Function *function_id, Eolian_Function_Type ftype);
|
||||
const Eolian_Expression *eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
|
@ -1268,10 +1267,6 @@ ffi.metatype("Eolian_Function_Parameter", {
|
|||
return eolian.eolian_parameter_is_nonull(self) ~= 0
|
||||
end,
|
||||
|
||||
is_nullable = function(self)
|
||||
return eolian.eolian_parameter_is_nullable(self) ~= 0
|
||||
end,
|
||||
|
||||
is_optional = function(self)
|
||||
return eolian.eolian_parameter_is_optional(self) ~= 0
|
||||
end
|
||||
|
|
|
@ -193,11 +193,11 @@ class @beta Efl.Net.Control.Manager extends Efl.Loop_Consumer {
|
|||
agent_reply {
|
||||
[[If event "agent_request_input" was emitted, this will reply with the requested data]]
|
||||
params {
|
||||
name: string @nullable; [[If @Efl.Net.Control.Agent_Request_Input_Field.name was present, this should contain the network name or the 'ssid' parameter should be used.]]
|
||||
@cref ssid: Eina.Slice @nullable; [[If @Efl.Net.Control.Agent_Request_Input_Field.ssid was present, this should contain the network SSID or the 'name' parameter should be used.]]
|
||||
username: string @nullable; [[If @Efl.Net.Control.Agent_Request_Input_Field.username was present, this should contain the identity or username]]
|
||||
passphrase: string @nullable; [[If @Efl.Net.Control.Agent_Request_Input_Field.passphrase was present, this should contain the password or passphrase, more details on how it should be interpreted was given in Efl.Net.Control.Agent_Request_Input.passphrase_type.]]
|
||||
wps: string @nullable; [[If @Efl.Net.Control.Agent_Request_Input_Field.wps was present, this should contain the WPS PIN or an empty string "" to use the WPS push button instead.]]
|
||||
name: string; [[If @Efl.Net.Control.Agent_Request_Input_Field.name was present, this should contain the network name or the 'ssid' parameter should be used.]]
|
||||
@cref ssid: Eina.Slice; [[If @Efl.Net.Control.Agent_Request_Input_Field.ssid was present, this should contain the network SSID or the 'name' parameter should be used.]]
|
||||
username: string; [[If @Efl.Net.Control.Agent_Request_Input_Field.username was present, this should contain the identity or username]]
|
||||
passphrase: string; [[If @Efl.Net.Control.Agent_Request_Input_Field.passphrase was present, this should contain the password or passphrase, more details on how it should be interpreted was given in Efl.Net.Control.Agent_Request_Input.passphrase_type.]]
|
||||
wps: string; [[If @Efl.Net.Control.Agent_Request_Input_Field.wps was present, this should contain the WPS PIN or an empty string "" to use the WPS push button instead.]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -109,7 +109,7 @@ interface @beta Efl.Net.Dialer extends Efl.Net.Socket {
|
|||
}
|
||||
|
||||
events {
|
||||
/* FIXME: Might be NULL, but @nullable does not work on event types */
|
||||
/* tag nullable once supported by eolian */
|
||||
dialer,resolved: string; [[Notifies @.address_dial was resolved to
|
||||
@Efl.Net.Socket.address_remote.
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@ class @beta Efl.Net.Socket_Ssl extends Efl.Loop_Consumer implements Efl.Net.Sock
|
|||
It's only used if @.hostname_verify is $true.
|
||||
]]
|
||||
values {
|
||||
hostname_override: string @nullable; [[Hostname for this socket]]
|
||||
hostname_override: string; [[Hostname for this socket]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -122,7 +122,7 @@ class @beta Efl.Net.Ssl.Context extends Efl.Object {
|
|||
It's only used if @.hostname_verify is $true.
|
||||
]]
|
||||
values {
|
||||
hostname: string @nullable; [[Hostname for this socket]]
|
||||
hostname: string; [[Hostname for this socket]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -235,7 +235,7 @@ interface Efl.Canvas.Scene
|
|||
object,focus,in: Efl.Input.Focus; [[Called when object got focus]]
|
||||
object,focus,out: Efl.Input.Focus; [[Called when object lost focus]]
|
||||
render,pre: void; [[Called when pre render happens]]
|
||||
/* FIXME: event_info can be NULL, but @nullable tag does not work on events yet */
|
||||
/* tag nullable once supported by eolian */
|
||||
render,post @beta: Efl.Gfx.Event.Render_Post; [[Called when post render happens]]
|
||||
device,changed @beta : Efl.Input.Device; [[Called when input device changed]]
|
||||
device,added @beta: Efl.Input.Device; [[Called when input device was added]]
|
||||
|
|
|
@ -174,7 +174,7 @@ interface @beta Efl.Gfx.Buffer
|
|||
$slice should not be the return value of @.buffer_managed_get.
|
||||
]]
|
||||
params {
|
||||
@cref slice: Eina.Slice @nullable; [[If $null, allocates an empty buffer]]
|
||||
@cref slice: Eina.Slice; [[If $null, allocates an empty buffer]]
|
||||
@in size: Eina.Size2D; [[The size in pixels.]]
|
||||
@in stride: int @optional; [[If 0, automatically guessed from the $width.]]
|
||||
@in cspace: Efl.Gfx.Colorspace @optional; [[argb8888 by default.]]
|
||||
|
@ -199,7 +199,7 @@ interface @beta Efl.Gfx.Buffer
|
|||
internally.
|
||||
]]
|
||||
params {
|
||||
@cref slice: Eina.Slice @nullable; [[If $null, detaches the previous buffer.]]
|
||||
@cref slice: Eina.Slice; [[If $null, detaches the previous buffer.]]
|
||||
@in size: Eina.Size2D; [[The size in pixels.]]
|
||||
@in stride: int @optional; [[If 0, automatically guessed from the $width.]]
|
||||
@in cspace: Efl.Gfx.Colorspace @optional; [[argb8888 by default.]]
|
||||
|
|
|
@ -18,7 +18,7 @@ mixin @beta Efl.Ui.Format
|
|||
]]
|
||||
}
|
||||
values {
|
||||
func: Efl.Ui.Format_Func_Cb @nullable; [[The format function callback]]
|
||||
func: Efl.Ui.Format_Func_Cb; [[The format function callback]]
|
||||
}
|
||||
}
|
||||
@property format_string {
|
||||
|
@ -35,7 +35,7 @@ mixin @beta Efl.Ui.Format
|
|||
as in $"%.0f %%".
|
||||
]]
|
||||
values {
|
||||
units: string @nullable; [[The format string for $obj's units label.]]
|
||||
units: string; [[The format string for $obj's units label.]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -95,7 +95,7 @@ class @beta Efl.Ui.Clock extends Efl.Ui.Layout_Base
|
|||
*/
|
||||
set {} get {}
|
||||
values {
|
||||
fmt: string @nullable; [[The clock format.]]
|
||||
fmt: string; [[The clock format.]]
|
||||
}
|
||||
}
|
||||
@property pause {
|
||||
|
|
|
@ -38,8 +38,8 @@ class @beta Efl.Ui.Internal_Text_Scroller extends Efl.Ui.Scroller
|
|||
This should be called upon constructing the object.
|
||||
]]
|
||||
params {
|
||||
text_obj: Efl.Canvas.Text @nullable; [[The text object to query]]
|
||||
text_table: Efl.Ui.Table @nullable; [[The table container of
|
||||
text_obj: Efl.Canvas.Text; [[The text object to query]]
|
||||
text_table: Efl.Ui.Table; [[The table container of
|
||||
the $text_obj]]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ class @beta Efl.Ui.Pager extends Efl.Ui.Layout_Base implements Efl.Pack_Linear
|
|||
[[Set a page transition effect]]
|
||||
}
|
||||
values {
|
||||
transition: Efl.Page.Transition @nullable; [[transition effect]]
|
||||
transition: Efl.Page.Transition; [[transition effect]]
|
||||
}
|
||||
}
|
||||
@property indicator {
|
||||
|
@ -40,7 +40,7 @@ class @beta Efl.Ui.Pager extends Efl.Ui.Layout_Base implements Efl.Pack_Linear
|
|||
[[Set a page indicator]]
|
||||
}
|
||||
values {
|
||||
indicator: Efl.Page.Indicator @nullable; [[indicator class]]
|
||||
indicator: Efl.Page.Indicator; [[indicator class]]
|
||||
}
|
||||
}
|
||||
@property current_page {
|
||||
|
|
|
@ -33,7 +33,7 @@ class @beta Efl.Ui.Radio extends Efl.Ui.Check implements Efl.Access.Widget.Actio
|
|||
]]
|
||||
}
|
||||
values {
|
||||
valuep: ptr(int) @nullable; [[Pointer to the integer to modify]]
|
||||
valuep: ptr(int); [[Pointer to the integer to modify]]
|
||||
}
|
||||
}
|
||||
@property selected_object {
|
||||
|
|
|
@ -17,7 +17,7 @@ class @beta Efl.Ui.Scroll.Manager extends Efl.Object implements
|
|||
set {
|
||||
}
|
||||
values {
|
||||
pan: Efl.Ui.Pan @nullable; [[Pan object]]
|
||||
pan: Efl.Ui.Pan; [[Pan object]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -360,7 +360,7 @@ class @beta Efl.Ui.Text extends Efl.Ui.Layout_Base implements Efl.Ui.Clickable,
|
|||
}
|
||||
events {
|
||||
changed: void; [[Called when entry changes]]
|
||||
/* FIXME: Sometimes it can be NULL but @nullable does not work on events */
|
||||
/* can be NULL, tag nullable once Eolian supports it */
|
||||
changed,user: Efl.Ui.Text_Change_Info;
|
||||
[[The text object has changed due to user interaction]]
|
||||
validate: Elm.Validate_Content; [[Called when validating]]
|
||||
|
|
|
@ -53,8 +53,8 @@ abstract Efl.Ui.Widget extends Efl.Canvas.Group implements Efl.Access.Object,
|
|||
[[Returns the current cursor name.]]
|
||||
}
|
||||
values {
|
||||
cursor: string @nullable; [[The cursor name, defined either
|
||||
by the display system or the theme.]]
|
||||
cursor: string; [[The cursor name, defined either
|
||||
by the display system or the theme.]]
|
||||
}
|
||||
}
|
||||
@property cursor_style @beta {
|
||||
|
@ -104,7 +104,7 @@ abstract Efl.Ui.Widget extends Efl.Canvas.Group implements Efl.Access.Object,
|
|||
[[Sets the new resize object for this widget.]]
|
||||
}
|
||||
values {
|
||||
sobj: Efl.Canvas.Object @nullable;
|
||||
sobj: Efl.Canvas.Object;
|
||||
[[A canvas object (often a @Efl.Canvas.Layout object).]]
|
||||
}
|
||||
}
|
||||
|
@ -216,7 +216,7 @@ abstract Efl.Ui.Widget extends Efl.Canvas.Group implements Efl.Access.Object,
|
|||
get {
|
||||
}
|
||||
values {
|
||||
parent: Efl.Ui.Widget @nullable; [[Widget parent object]]
|
||||
parent: Efl.Ui.Widget; [[Widget parent object]]
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -231,7 +231,7 @@ abstract Efl.Ui.Widget extends Efl.Canvas.Group implements Efl.Access.Object,
|
|||
out loud, instead $txt will be read out.
|
||||
]]
|
||||
values {
|
||||
txt: string @nullable; [[Accessibility text description.]]
|
||||
txt: string; [[Accessibility text description.]]
|
||||
}
|
||||
}
|
||||
on_access_activate @protected @beta {
|
||||
|
|
|
@ -303,7 +303,7 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
type @Efl.Canvas.Image or @Efl.Ui.Image are allowed.
|
||||
]]
|
||||
values {
|
||||
icon: Efl.Canvas.Object @nullable;
|
||||
icon: Efl.Canvas.Object;
|
||||
[[The image object to use for an icon.]]
|
||||
}
|
||||
}
|
||||
|
@ -314,7 +314,7 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
the object to use for the window icon.
|
||||
]]
|
||||
values {
|
||||
icon: const(Efl.Canvas.Object) @nullable;
|
||||
icon: const(Efl.Canvas.Object);
|
||||
[[The Evas image object to use for an icon.]]
|
||||
}
|
||||
}
|
||||
|
@ -444,7 +444,7 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
get {
|
||||
}
|
||||
values {
|
||||
name: string @nullable; [[Window name]]
|
||||
name: string; [[Window name]]
|
||||
}
|
||||
}
|
||||
@property win_type @beta {
|
||||
|
@ -797,7 +797,7 @@ class Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Access.W
|
|||
get {
|
||||
}
|
||||
values {
|
||||
style: string @nullable; [[The name of the focus highlight style.]]
|
||||
style: string; [[The name of the focus highlight style.]]
|
||||
}
|
||||
}
|
||||
@property focus_highlight_animate {
|
||||
|
|
|
@ -287,7 +287,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the content has been moved up.]]
|
||||
}
|
||||
values {
|
||||
scroll_up_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
scroll_up_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hbar_drag_cb {
|
||||
|
@ -295,7 +295,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the horizontal scrollbar is dragged.]]
|
||||
}
|
||||
values {
|
||||
hbar_drag_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
hbar_drag_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property drag_start_cb {
|
||||
|
@ -303,7 +303,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when dragging of the contents has started.]]
|
||||
}
|
||||
values {
|
||||
drag_start_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
drag_start_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property freeze {
|
||||
|
@ -319,7 +319,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[When the viewport is resized, the callback is called.]]
|
||||
}
|
||||
values {
|
||||
viewport_resize_cb: Elm_Interface_Scrollable_Resize_Cb @nullable; [[The callback]]
|
||||
viewport_resize_cb: Elm_Interface_Scrollable_Resize_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scroll_left_cb {
|
||||
|
@ -327,7 +327,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the content has been moved to the left]]
|
||||
}
|
||||
values {
|
||||
scroll_left_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
scroll_left_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property vbar_press_cb {
|
||||
|
@ -335,7 +335,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the vertical scrollbar is pressed.]]
|
||||
}
|
||||
values {
|
||||
vbar_press_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
vbar_press_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hbar_press_cb {
|
||||
|
@ -343,7 +343,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the horizontal scrollbar is pressed.]]
|
||||
}
|
||||
values {
|
||||
hbar_press_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
hbar_press_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hbar_unpress_cb {
|
||||
|
@ -351,7 +351,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the horizontal scrollbar is unpressed.]]
|
||||
}
|
||||
values {
|
||||
hbar_unpress_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
hbar_unpress_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property drag_stop_cb {
|
||||
|
@ -359,7 +359,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when dragging of the contents has stopped.]]
|
||||
}
|
||||
values {
|
||||
drag_stop_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
drag_stop_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property extern_pan {
|
||||
|
@ -367,7 +367,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
set {
|
||||
}
|
||||
values {
|
||||
pan: Efl.Canvas.Object @nullable; [[Pan object]]
|
||||
pan: Efl.Canvas.Object; [[Pan object]]
|
||||
}
|
||||
}
|
||||
@property page_change_cb {
|
||||
|
@ -375,7 +375,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the visible page changes.]]
|
||||
}
|
||||
values {
|
||||
page_change_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
page_change_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property hold {
|
||||
|
@ -391,7 +391,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the scrolling animation has started.]]
|
||||
}
|
||||
values {
|
||||
animate_start_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
animate_start_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scroll_down_cb {
|
||||
|
@ -399,7 +399,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the content has been moved down.]]
|
||||
}
|
||||
values {
|
||||
scroll_down_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
scroll_down_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property page_relative {
|
||||
|
@ -416,7 +416,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the content has been moved.]]
|
||||
}
|
||||
values {
|
||||
scroll_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
scroll_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property animate_stop_cb {
|
||||
|
@ -424,7 +424,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the scrolling animation has stopped.]]
|
||||
}
|
||||
values {
|
||||
animate_stop_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
animate_stop_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property content_min_limit_cb {
|
||||
|
@ -432,7 +432,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
set {
|
||||
}
|
||||
values {
|
||||
min_limit_cb: Elm_Interface_Scrollable_Min_Limit_Cb @nullable; [[The callback]]
|
||||
min_limit_cb: Elm_Interface_Scrollable_Min_Limit_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scroll_right_cb {
|
||||
|
@ -440,7 +440,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the content has been moved to the right.]]
|
||||
}
|
||||
values {
|
||||
scroll_right_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
scroll_right_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property scrollable_content {
|
||||
|
@ -448,7 +448,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
set {
|
||||
}
|
||||
values {
|
||||
content: Efl.Canvas.Object @nullable; [[Content object]]
|
||||
content: Efl.Canvas.Object; [[Content object]]
|
||||
}
|
||||
}
|
||||
@property edge_left_cb {
|
||||
|
@ -456,7 +456,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the left edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_left_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
edge_left_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property vbar_drag_cb {
|
||||
|
@ -464,7 +464,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the horizontal scrollbar is dragged.]]
|
||||
}
|
||||
values {
|
||||
vbar_drag_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
vbar_drag_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property vbar_unpress_cb {
|
||||
|
@ -472,7 +472,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the horizontal scrollbar is unpressed.]]
|
||||
}
|
||||
values {
|
||||
vbar_unpress_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
vbar_unpress_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property edge_bottom_cb {
|
||||
|
@ -480,7 +480,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the bottom edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_bottom_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
edge_bottom_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property edge_right_cb {
|
||||
|
@ -488,7 +488,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the right edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_right_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
edge_right_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property edge_top_cb {
|
||||
|
@ -496,7 +496,7 @@ mixin @beta Elm.Interface_Scrollable requires Efl.Ui.Widget extends Efl.Ui.Scrol
|
|||
[[Set the callback to run when the top edge of the content has been reached.]]
|
||||
}
|
||||
values {
|
||||
edge_top_cb: Elm_Interface_Scrollable_Cb @nullable; [[The callback]]
|
||||
edge_top_cb: Elm_Interface_Scrollable_Cb; [[The callback]]
|
||||
}
|
||||
}
|
||||
@property objects {
|
||||
|
|
|
@ -91,7 +91,7 @@ abstract Efl.Object
|
|||
get {
|
||||
}
|
||||
values {
|
||||
parent: Efl.Object @nullable; [[The new parent.]]
|
||||
parent: Efl.Object; [[The new parent.]]
|
||||
}
|
||||
}
|
||||
@property name {
|
||||
|
@ -108,7 +108,7 @@ abstract Efl.Object
|
|||
get {
|
||||
}
|
||||
values {
|
||||
name: string @nullable; [[The name.]]
|
||||
name: string; [[The name.]]
|
||||
}
|
||||
}
|
||||
@property comment {
|
||||
|
@ -123,7 +123,7 @@ abstract Efl.Object
|
|||
get {
|
||||
}
|
||||
values {
|
||||
comment: string @nullable; [[The comment.]]
|
||||
comment: string; [[The comment.]]
|
||||
}
|
||||
}
|
||||
debug_name_override {
|
||||
|
|
|
@ -1791,16 +1791,6 @@ EAPI const Eolian_Documentation *eolian_parameter_documentation_get(const Eolian
|
|||
*/
|
||||
EAPI Eina_Bool eolian_parameter_is_nonull(const Eolian_Function_Parameter *param_desc);
|
||||
|
||||
/*
|
||||
* @brief Indicates if a parameter is nullable.
|
||||
*
|
||||
* @param[in] param_desc parameter handle
|
||||
* @return EINA_TRUE if nullable, EINA_FALSE otherwise
|
||||
*
|
||||
* @ingroup Eolian
|
||||
*/
|
||||
EAPI Eina_Bool eolian_parameter_is_nullable(const Eolian_Function_Parameter *param_desc);
|
||||
|
||||
/*
|
||||
* @brief Indicates if a parameter is optional.
|
||||
*
|
||||
|
|
|
@ -40,13 +40,6 @@ eolian_parameter_is_nonull(const Eolian_Function_Parameter *param)
|
|||
return param->nonull;
|
||||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
eolian_parameter_is_nullable(const Eolian_Function_Parameter *param)
|
||||
{
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
|
||||
return param->nullable;
|
||||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
eolian_parameter_is_optional(const Eolian_Function_Parameter *param)
|
||||
{
|
||||
|
|
|
@ -21,7 +21,10 @@ enum Tokens
|
|||
};
|
||||
|
||||
/* all keywords in eolian, they can still be used as names (they're TOK_VALUE)
|
||||
* they just fill in the "kw" field of the token */
|
||||
* they just fill in the "kw" field of the token
|
||||
*
|
||||
* reserved for the future: @nullable
|
||||
*/
|
||||
#define KEYWORDS KW(class), KW(const), KW(enum), KW(return), KW(struct), \
|
||||
\
|
||||
KW(abstract), KW(c_prefix), KW(composite), KW(constructor), KW(constructors), \
|
||||
|
|
|
@ -907,7 +907,7 @@ parse_param(Eo_Lexer *ls, Eina_List **params, Eina_Bool allow_inout,
|
|||
Eina_Bool is_vals)
|
||||
{
|
||||
Eina_Bool has_nonull = EINA_FALSE, has_optional = EINA_FALSE,
|
||||
has_nullable = EINA_FALSE, has_owned = EINA_FALSE;
|
||||
has_owned = EINA_FALSE;
|
||||
Eina_Bool cref = (ls->t.kw == KW_at_cref);
|
||||
Eolian_Function_Parameter *par = calloc(1, sizeof(Eolian_Function_Parameter));
|
||||
par->param_dir = EOLIAN_IN_PARAM;
|
||||
|
@ -956,8 +956,6 @@ parse_param(Eo_Lexer *ls, Eina_List **params, Eina_Bool allow_inout,
|
|||
for (;;) switch (ls->t.kw)
|
||||
{
|
||||
case KW_at_nonull:
|
||||
if (has_nullable)
|
||||
eo_lexer_syntax_error(ls, "both nullable and nonull specified");
|
||||
CASE_LOCK(ls, nonull, "nonull qualifier")
|
||||
par->nonull = EINA_TRUE;
|
||||
eo_lexer_get(ls);
|
||||
|
@ -967,13 +965,6 @@ parse_param(Eo_Lexer *ls, Eina_List **params, Eina_Bool allow_inout,
|
|||
par->optional = EINA_TRUE;
|
||||
eo_lexer_get(ls);
|
||||
break;
|
||||
case KW_at_nullable:
|
||||
if (has_nonull)
|
||||
eo_lexer_syntax_error(ls, "both nullable and nonull specified");
|
||||
CASE_LOCK(ls, nullable, "nullable qualifier");
|
||||
par->nullable = EINA_TRUE;
|
||||
eo_lexer_get(ls);
|
||||
break;
|
||||
case KW_at_owned:
|
||||
CASE_LOCK(ls, owned, "owned qualifier");
|
||||
par->type->owned = EINA_TRUE;
|
||||
|
|
|
@ -252,7 +252,6 @@ struct _Eolian_Function_Parameter
|
|||
Eolian_Documentation *doc;
|
||||
Eolian_Parameter_Dir param_dir;
|
||||
Eina_Bool nonull :1; /* True if this argument cannot be NULL - deprecated */
|
||||
Eina_Bool nullable :1; /* True if this argument is nullable */
|
||||
Eina_Bool optional :1; /* True if this argument is optional */
|
||||
};
|
||||
|
||||
|
|
|
@ -963,7 +963,7 @@ class Function(Object):
|
|||
class Function_Parameter(Object):
|
||||
def __repr__(self):
|
||||
return "<eolian.Function_Parameter '{0.name}', type={0.type}," \
|
||||
" optional={0.is_optional}, nullable={0.is_nullable}>".format(self)
|
||||
" optional={0.is_optional}>".format(self)
|
||||
|
||||
@cached_property
|
||||
def direction(self):
|
||||
|
@ -978,10 +978,6 @@ class Function_Parameter(Object):
|
|||
def is_nonull(self):
|
||||
return bool(lib.eolian_parameter_is_nonull(self))
|
||||
|
||||
@cached_property
|
||||
def is_nullable(self):
|
||||
return bool(lib.eolian_parameter_is_nullable(self))
|
||||
|
||||
@cached_property
|
||||
def is_optional(self):
|
||||
return bool(lib.eolian_parameter_is_optional(self))
|
||||
|
|
|
@ -403,10 +403,6 @@ lib.eolian_parameter_documentation_get.restype = c_void_p
|
|||
lib.eolian_parameter_is_nonull.argtypes = (c_void_p,)
|
||||
lib.eolian_parameter_is_nonull.restype = c_bool
|
||||
|
||||
# EAPI Eina_Bool eolian_parameter_is_nullable(const Eolian_Function_Parameter *param_desc);
|
||||
lib.eolian_parameter_is_nullable.argtypes = (c_void_p,)
|
||||
lib.eolian_parameter_is_nullable.restype = c_bool
|
||||
|
||||
# EAPI Eina_Bool eolian_parameter_is_optional(const Eolian_Function_Parameter *param_desc);
|
||||
lib.eolian_parameter_is_optional.argtypes = (c_void_p,)
|
||||
lib.eolian_parameter_is_optional.restype = c_bool
|
||||
|
|
|
@ -381,7 +381,6 @@ class TestEolianFunction(unittest.TestCase):
|
|||
self.assertEqual(p.name, 'add')
|
||||
self.assertIsNone(p.default_value)
|
||||
self.assertFalse(p.is_nonull) # TODO is correct ?? 'add' can be null?
|
||||
self.assertFalse(p.is_nullable)
|
||||
self.assertFalse(p.is_optional)
|
||||
self.assertEqual(p.type.name, 'double')
|
||||
self.assertIsInstance(p.documentation, eolian.Documentation)
|
||||
|
|
|
@ -1,12 +0,0 @@
|
|||
class Null {
|
||||
methods {
|
||||
foo {
|
||||
params {
|
||||
x: ptr(char);
|
||||
y: ptr(char) @nullable;
|
||||
z: ptr(char) @optional;
|
||||
w: ptr(char) @optional @nullable;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1010,56 +1010,6 @@ EFL_START_TEST(eolian_free_func)
|
|||
}
|
||||
EFL_END_TEST
|
||||
|
||||
EFL_START_TEST(eolian_null)
|
||||
{
|
||||
const Eolian_Class *class;
|
||||
const Eolian_Function *func;
|
||||
const Eolian_Function_Parameter *param;
|
||||
const Eolian_Unit *unit;
|
||||
Eina_Iterator *iter;
|
||||
|
||||
Eolian_State *eos = eolian_state_new();
|
||||
|
||||
/* Parsing */
|
||||
fail_if(!eolian_state_directory_add(eos, TESTS_SRC_DIR"/data"));
|
||||
fail_if(!(unit = eolian_state_file_parse(eos, "null.eo")));
|
||||
|
||||
fail_if(!(class = eolian_unit_class_by_name_get(unit, "Null")));
|
||||
fail_if(!(func = eolian_class_function_by_name_get(class, "foo", EOLIAN_METHOD)));
|
||||
|
||||
fail_if(!(iter = eolian_function_parameters_get(func)));
|
||||
|
||||
/* no qualifiers */
|
||||
fail_if(!(eina_iterator_next(iter, (void**)¶m)));
|
||||
fail_if(strcmp(eolian_parameter_name_get(param), "x"));
|
||||
fail_if(eolian_parameter_is_nullable(param));
|
||||
fail_if(eolian_parameter_is_optional(param));
|
||||
|
||||
/* nullable */
|
||||
fail_if(!(eina_iterator_next(iter, (void**)¶m)));
|
||||
fail_if(strcmp(eolian_parameter_name_get(param), "y"));
|
||||
fail_if(!eolian_parameter_is_nullable(param));
|
||||
fail_if(eolian_parameter_is_optional(param));
|
||||
|
||||
/* optional */
|
||||
fail_if(!(eina_iterator_next(iter, (void**)¶m)));
|
||||
fail_if(strcmp(eolian_parameter_name_get(param), "z"));
|
||||
fail_if(eolian_parameter_is_nullable(param));
|
||||
fail_if(!eolian_parameter_is_optional(param));
|
||||
|
||||
/* both */
|
||||
fail_if(!(eina_iterator_next(iter, (void**)¶m)));
|
||||
fail_if(strcmp(eolian_parameter_name_get(param), "w"));
|
||||
fail_if(!eolian_parameter_is_nullable(param));
|
||||
fail_if(!eolian_parameter_is_optional(param));
|
||||
|
||||
fail_if(eina_iterator_next(iter, (void**)¶m));
|
||||
eina_iterator_free(iter);
|
||||
|
||||
eolian_state_free(eos);
|
||||
}
|
||||
EFL_END_TEST
|
||||
|
||||
EFL_START_TEST(eolian_import)
|
||||
{
|
||||
const Eolian_Class *class;
|
||||
|
@ -1654,7 +1604,6 @@ void eolian_parsing_test(TCase *tc)
|
|||
tcase_add_test(tc, eolian_enum);
|
||||
tcase_add_test(tc, eolian_class_funcs);
|
||||
tcase_add_test(tc, eolian_free_func);
|
||||
tcase_add_test(tc, eolian_null);
|
||||
tcase_add_test(tc, eolian_import);
|
||||
tcase_add_test(tc, eolian_docs);
|
||||
tcase_add_test(tc, eolian_function_types);
|
||||
|
|
Loading…
Reference in New Issue