Sha256: afa5885e8e78cf225de455ed51a48cd7fba09b5293cc9ee6b19d8d806bd173d8

Contents?: true

Size: 1.08 KB

Versions: 12

Compression:

Stored size: 1.08 KB

Contents

package org.cx4a.rsense.typing.runtime;

import org.cx4a.rsense.ruby.Ruby;
import org.cx4a.rsense.ruby.IRubyObject;
import org.cx4a.rsense.ruby.RubyObject;
import org.cx4a.rsense.typing.vertex.Vertex;

public class VertexHolder extends RubyObject {
    private Vertex vertex;

    public VertexHolder(Ruby runtime, Vertex vertex) {
        super(runtime, runtime.getObject());
        this.vertex = vertex;
    }

    public Vertex getVertex() {
        return vertex;
    }

    @Override
    public String toString() {
        return vertex.toString();
    }

    @Override
    public int hashCode() {
        int code = 0;
        for (IRubyObject type : vertex.getTypeSet()) {
            code ^= type.hashCode();
            code *= 13;
        }
        return code;
    }

    @Override
    public boolean equals(Object object) {
        if (this == object) {
            return true;
        }

        if (!(object instanceof VertexHolder)) {
            return false;
        }

        VertexHolder o = (VertexHolder) object;
        return vertex.getTypeSet().equals(o.vertex.getTypeSet());
    }
}

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
rsense-core-0.6.6 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.6.5 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.6.4 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.6.2 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.6.1 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.6.0 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.5.9 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.5.8 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.5.6 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.5.2 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.5.1 src/org/cx4a/rsense/typing/runtime/VertexHolder.java
rsense-core-0.5.0 src/org/cx4a/rsense/typing/runtime/VertexHolder.java