Sorry, my fault for using links that only reference master, not a stable
revision. I meant that you should add a new argument to the
get_specified macro arguments.
Cheers,
Josh
On 2015-11-05 1:28 PM, Pranesha Shashwath Kumar Kattepura Jayabheema Rao
wrote:
Hi Josh,
The content in the 6506 in the link you shared in your previous mail
i.e., http://mxr.mozilla.org/servo/source/components/style/properties.mako.
rs#6506 , and the content in line 6506 in properties.mako.rs in GutHub are
different. Did you mean to ask me to add the argument --
`$error_reporter: expr' as argument in Computed::context but
&computed::context is already an argument in cascade function.
Yours sincerely,
Pranesha Shashwath Kumar
[Campus ID: 200112642]
On Sat, Oct 31, 2015 at 12:27 PM, Josh Matthews <j...@joshmatthews.net>
wrote:
In answer to your question, the change that is causing all of these errors
is
https://github.com/GauriGNaik/servo/commit/c8b79b964d9f5225196a307102442abf3352c43b#diff-1816aa410246f8915a124610d4e5bc3cR5620
..
You need to modify
http://mxr.mozilla.org/servo/source/components/style/properties.mako.rs#6506
to accept a new `$error_reporter: expr` argument, and then you can pass
`$error_reporter` as an argument when required.
I suspect you'll need to add a new argument to the `cascade` function, and
pass that for each invocation of `get_specified!`.
Cheers,
Josh
On 2015-10-31 10:01 AM, Pranesha Shashwath Kumar Kattepura Jayabheema Rao
wrote:
Thanks for the info. The small change we made to struct ParserContext in
parser.rs seems to have lots of dependencies. This seems to be a scenario
of metaprogramming where a new function is being created at run-time.
Could
you please help us understand if changing this function to accept 4 values
was valid change to happen. If yes, what is the datatype of the 4th value
being accepted. As I understand the new scenario for datatypes in the
function below is as follows :
substitute_variables_display(value, &custom_properties, |value| ...)
1st - value
2nd - &custom_properties
3rd - *a part of &custom_properties*
4th - |value|
I believe the 4th new argument is being created in the 3rd position as
described above. So, the new function may look something like this:
substitute_variables_display(value, &custom_properties, *new_value*,
|value| ...)
Could you please let us know the following:
* Is my understanding of the function being translated from 3 argument
function to 4 arguments one as I described above correct
* was this translation supposed to happen, or should it have been a 3
argument function itself.
* If yes, what is the datatype of this argument that got created -- what
could be the simplest way to solve it - we can either assign a default
value to the *new_value, *or we can add a defunct value at every function
call of this function. We just wish to make sure that another chain of
dependencies is not created.
Yours sincerely,
Shashwath
On Oct 31, 2015 1:17 AM, "Josh Matthews" <j...@joshmatthews.net> wrote:
This is a tricky one. I suspect if we look closely at the error messages,
they would actually be pointing at a line _inside_ of the `get_specified`
macro, rather than directly at users of the macro. Specifically,
`get_specified!(get_box, display, value)` ends up expanding as something
like this:
substitute_variables_display(value, &custom_properties, |value| ...)
which is indeed a function that takes 3 arguments on master (ie.
http://mxr.mozilla.org/servo/source/components/style/properties.mako.rs#5617
) and presumably has been modified to take 4 in your branch.
Does that make sense?
Cheers,
Josh
On 2015-10-30 10:00 PM, Pranesha Shashwath Kumar Kattepura Jayabheema Rao
wrote:
Hi,
We are getting an error "This function takes 4 parameters but 3 were
supplied" for all the instances of the function get_specified!.
When I look up the definition of the function at line 6505 in
properties.mako.rs it looks as follows:
macro_rules! get_specified( ($style_struct_getter: ident, $property:
ident,
$declared_value: expr) => { concat_idents!(substitute_variables_, $
property)( $declared_value, &custom_properties, |value| match *value {
DeclaredValue::Value(specified_value) => specified_value,
DeclaredValue::
Initial => longhands::$property::get_initial_value(),
DeclaredValue::Inherit
=> { inherited_style.$style_struct_getter().$property.clone() }
DeclaredValue::WithVariables { .. } => unreachable!() } ) }; );
As I understand it the function rightly accepts only 3 parameters. Could
you please correct me if I am wrong. I do not see a fourth parameter
being
asked for here.
Yours sincerely,
Pranesha Shashwath Kumar
[Campus ID: 200112642]
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo