001/* 002 * $Id: ValueFactory.java 5204 2015-04-05 10:30:15Z kredel $ 003 */ 004 005package edu.jas.structure; 006 007 008/** 009 * Value factory interface. Defines constructor from value. 010 * @param C base element type 011 * @param D result element type 012 * @author Heinz Kredel 013 */ 014public interface ValueFactory<C extends RingElem<C>, D extends RingElem<D>> { 015 016 017 /** 018 * Create from value. 019 */ 020 public D create(C n); 021 022 023 /** 024 * Factory for value elements. 025 */ 026 public RingFactory<C> valueFactory(); 027 028}