Annotation of parser3/src/doc/ClassExample3.dox, revision 1.4.34.1
1.4.34.1! paf 1: /** @page ClassExample3 Sample of creating class (methods and fields)
1.1 paf 2:
1.4.34.1! paf 3: To create a class of your own, which
! 4: - could be constructed by users,
! 5: - has methods
! 6: - AND fields
! 7: [like 'image' class],
! 8: one need to create simple class, see @ref ClassExample1,
! 9: and override Methoded::create_new_value to
1.1 paf 10:
1.2 paf 11: @code
12: class MExample3 : public Methoded {
13: public: // VStateless_class
14:
15: Value *create_new_value(Pool& pool) { return new(pool) VExample3(pool); }
16: @endcode
1.1 paf 17:
1.4.34.1! paf 18: This methods would be called when user would creates values of your type:
1.2 paf 19: @verbatim
1.3 paf 20: $variable[^example3::create[]]
1.2 paf 21: @endverbatim
22:
1.4.34.1! paf 23: Here "VExample3", is value class, see ClassExample2.
! 24: It need not be registered, because it has Methoded::used_directly set to true.
! 25: But it should override:
1.4 paf 26: VStateless_class *get_class() { return example_class3; }
1.4.34.1! paf 27: where example_class3 is global instance of MExample3.
1.1 paf 28:
29: */
E-mail: