aboutsummaryrefslogtreecommitdiff
path: root/doc-tool/resources/_layouts/api-page.html
blob: 3d4763ec7efce4011fa69d1564caa6de05f9a167 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
---
layout: sidebar
extraCSS:
    - css/api-page.css
---

<script>
    document.title = "{{ site.project }} API - {{ entity.name }}"
</script>

<div id="entity-container">
    <div id="entity-title">
        <span id="entity-annotations">
            {% for annot in entity.annotations %}@{{ annot | split: '.' | last }} {% endfor %}
        </span>
        <span id="entity-modifiers">
            {{ entity.modifiers | join: " " }}
        </span>
        <span id="entity-kind">
            {{ entity.kind }}
        </span>
        <span id="entity-name">
            {{ entity.name }}
        </span>
        <span id="entity-type-params">
            <span class="no-left">[</span>
            {% for param in entity.typeParams %}
            <span class="no-left">
                {% if forloop.last %}
                    {{ param }}
                {% else %}
                    {{ param }},
                {% endif %}
            </span>
            {% endfor %}
            <span class="no-left">]</span>
        </span>
        {% if entity.superTypes.size > 0 %}
        <div id="super-types">
            {% for super in entity.superTypes %}
            {% if forloop.first %}
            <span class="keyword">extends</span>
            {% else %}
            <span class="keyword">with</span>
            {% endif %}
            <span class="entity-super-type">{% renderLink super %}</span>
            {% endfor %}
        </div>
        {% endif %}
    </div>

    {% if entity.comment.body %}
    <div id="entity-body" class="entity-section">
        {{ entity.comment.body }}
    </div>
    {% endif %}

    <h1 class="section {% if entity.hasVisibleMembers == false %}empty{% endif %}">Members</h1>

    <div id="entity-members" class="entity-section {% if entity.hasVisibleMembers == false %}empty{% endif %}">
        {% for member in entity.members %}
        <div id="{{ member.signature }}" class="member {% if member.isPrivate %}private{% elsif member.isProtected %}protected{% endif %}">
            <div class="member-title">
                <span class="expand-button" onclick="toggleMemberBody(this, '{{ member.signature }}');">[+]</span>
                <span class="member-annotations">
                    {% for annot in member.annotations %}@{{ annot | split: '.' | last }} {% endfor %}
                </span>
                <span class="member-modifiers">
                    {{ member.modifiers | join: " " }}
                </span>
                <span class="member-kind">
                    {{ member.kind }}
                </span>
                <span class="member-name {% if member.isImplicitlyAddedFrom != null %}implicitly-added{% endif %}">
                    {% if member.kind == "class" or member.kind == "case class" or member.kind == "object" or member.kind == "trait" %}
                        <a href="{{ site.baseurl }}/api/{{ member.path | join: "/" }}.html">{{ member.name }}</a>
                    {% elsif member.kind == "package" %}
                        <a href="{{ site.baseurl }}/api/{{ member.path | join: "/" }}/index.html">{{ member.name }}</a>
                    {% else %}
                        {{ member.name }}
                    {% endif %}
                </span>

                {% if member.kind == "def" and member.paramLists.size > 0 %}
                    {% for plist in member.paramLists %}
                    <span class="no-left">(</span>
                        {% if plist.isImplicit %}
                        <span class="no-left keyword">implicit</span>
                        {% endif %}
                        {% for namedRef in plist.list %}
                            <span class="{% if forloop.first %}no-left{% endif %}">
                                {{ namedRef.title }}:{% if namedRef.isByName %} =&gt;{% endif %}
                            </span>
                            {% renderRef namedRef.ref %}
                            {% if forloop.last != true %}
                                <span class="no-left">, </span>
                            {% endif %}
                        {% endfor %}
                    <span class="no-left">)</span>
                    {% endfor %}
                {% endif %}

                {% if member.kind == "type" and member.alias != null %}
                <span class="type-alias">
                    <span class="equals"> = </span>
                    {% renderRef member.alias %}
                </span>
                {% endif %}

                {% if member.returnValue %}
                <span class="no-left">: {% renderRef member.returnValue %}</span>
                {% endif %}
            </div><!-- end member-title -->

            <div class="member-body">
                <div class="member-body-short" id="short-body-{{ member.signature }}">
                    {{ member.comment.short }}
                </div>
                <div class="member-body-long" id ="long-body-{{ member.signature }}">
                    {{ member.comment.body }}
                </div>
            </div>
            <script>
                function toggleMemberBody(span, sig) {
                    var shortBody = document.getElementById("short-body-" + sig);
                    var longBody = document.getElementById("long-body-" + sig);

                    shortBody.classList.toggle("toggled")
                    longBody.classList.toggle("toggled")

                    span.innerHTML = (span.innerHTML == "[+]") ?  "[-]" : "[+]";
                }
            </script>
        </div><!-- end member -->
        {% endfor %}
    </div>
</div><!-- end entity-container -->