ffc team mailing list archive
-
ffc team
-
Mailing list archive
-
Message #04136
Re: [Ufl] [Bug 769811] [NEW] JIT cache problem with id(form)
On 26/04/11 13:51, Anders Logg wrote:
> On Tue, Apr 26, 2011 at 02:00:50PM +0200, Anders Logg wrote:
>> It feels good that you trust me enough to handle it. ;-)
>>
>> Will add it sometime this afternoon and then we can revisit the JIT
>> compiler caching.
>
> I'm getting confused here... Looking at preprocess.py in UFL, I see this:
>
It is confusing. Does the function 'preprocess' do anything that the old
FormData class didn't? It would be easier to follow if Form just had a
member function form_data() that computes and stores data (like it used
to), or if Form had a 'preprocess' function. Having the function
preprocess return a new form is really confusing.
Garth
>
> def preprocess(form, object_names={}, common_cell=None):
>
> ...
>
> # Check that form is not already preprocessed
> if form.form_data() is not None:
> debug("Form is already preprocessed. Not updating form data.")
> return form
>
> ...
>
> # Attach form data to form
> form._form_data = form_data
>
> # Attach preprocessed form to form data
> form_data._form = form
>
>
> And when I look at the blamelist (bzr annotate), it looks like I added
> those lines, so I must have come to my senses and added it back at
> some point (way back). So in conclusion, calling preprocess() should
> not taking any time.
>
> What am I missing?
>
> --
> Anders
Follow ups
References