Loading...
Searching...
No Matches
field_lazy.h
Go to the documentation of this file.
# ifndef _RHEOLEF_FIELD_LAZY_H
# define _RHEOLEF_FIELD_LAZY_H
//
// This file is part of Rheolef.
//
// Copyright (C) 2000-2009 Pierre Saramito <Pierre.Saramito@imag.fr>
//
// Rheolef is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// Rheolef is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Rheolef; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// =========================================================================
// general unassembled and nonlinear field expressions
// AUTHOR: Pierre.Saramito@imag.fr
// DATE: 6 april 1920
namespace rheolef {
} // namespace rheolef
#include "rheolef/field_concept.h"
#include "rheolef/space.h"
namespace rheolef { namespace details {
// get types in CRTP from Derived via a specialized field_traits<Derived>
// see https://stackoverflow.com/questions/5680263/use-curiously-recurring-template-pattern-crtp-with-additional-type-parameters
template<class Derived, class Sfinae = void>
struct field_traits;
template<class Derived>
class field_lazy_base {
public:
// no common methods yet
protected:
Derived& derived() { return *static_cast< Derived*>(this); }
const Derived& derived() const { return *static_cast<const Derived*>(this); }
};
}}// namespace rheolef::details
# endif /* _RHEOLEF_FIELD_LAZY_H */
rheolef::details::field_lazy_base
Definition field_lazy.h:268
rheolef::details::field_lazy_base::derived
const Derived & derived() const
Definition field_lazy.h:275
rheolef::details::field_lazy_base::derived
Derived & derived()
Definition field_lazy.h:274
rheolef
This file is part of Rheolef.
Definition compiler_eigen.h:39
rheolef::details::field_traits
Definition field_lazy.h:265