LinkedCollectionElement.ts 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. import { JavaObject, cast_java_lang_Object } from '../../../java/lang/JavaObject';
  2. export class LinkedCollectionElement<E> extends JavaObject {
  3. private _value : E;
  4. private _prev : LinkedCollectionElement<E> | null = null;
  5. private _next : LinkedCollectionElement<E> | null = null;
  6. /**
  7. * Erstellt eine neues LinkedCollectionElement mit den Wert _value und den
  8. * übergebenen Vorgänger bzw. Nachfolger
  9. *
  10. * @param value der Wert des SimpleCollectionElements
  11. * @param prev der Vorgänger
  12. * @param next der Nachfolger
  13. */
  14. constructor(value : E, prev : LinkedCollectionElement<E> | null, next : LinkedCollectionElement<E> | null) {
  15. super();
  16. this._value = value;
  17. this._prev = prev;
  18. this._next = next;
  19. }
  20. /**
  21. * Gibt den Wert des Elements zurück.
  22. *
  23. * @return der Wert des Elements
  24. */
  25. getValue() : E {
  26. return this._value;
  27. }
  28. /**
  29. * Ersetzt den Wert des Elements.
  30. *
  31. * @param value der neue Wert des Elements
  32. *
  33. * @return der alte Wert des Elements
  34. */
  35. setValue(value : E) : E {
  36. let oldValue : E = this._value;
  37. this._value = value;
  38. return oldValue;
  39. }
  40. /**
  41. * Gibt den Vorgänger des Elementes zurück.
  42. *
  43. * @return das LinkedCollectionElement das der Vorgänger des Elementes ist
  44. */
  45. getPrev() : LinkedCollectionElement<E> | null {
  46. return this._prev;
  47. }
  48. /**
  49. * Setzt den Vorgänger des Elementes auf _prev
  50. *
  51. * @param prev der Vorgänger des Elements
  52. */
  53. setPrev(prev : LinkedCollectionElement<E> | null) : void {
  54. this._prev = prev;
  55. }
  56. /**
  57. * Gibt den Nachfolger des Elementes zurück.
  58. *
  59. * @return das LinkedCollectionElement das der Nachfolger des Elementes ist
  60. */
  61. getNext() : LinkedCollectionElement<E> | null {
  62. return this._next;
  63. }
  64. /**
  65. * Setzt den Nachfolger des Elementes auf _next
  66. *
  67. * @param next der Nachfolger des Elements
  68. */
  69. setNext(next : LinkedCollectionElement<E> | null) : void {
  70. this._next = next;
  71. }
  72. isTranspiledInstanceOf(name : string): boolean {
  73. return ['de.nrw.schule.svws.core.adt.collection.LinkedCollectionElement'].includes(name);
  74. }
  75. }
  76. export function cast_de_nrw_schule_svws_core_adt_collection_LinkedCollectionElement<E>(obj : unknown) : LinkedCollectionElement<E> {
  77. return obj as LinkedCollectionElement<E>;
  78. }