Fluent::time()
last analyzed

Size

Total Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 1
1
<?php
2
3
namespace LaravelDoctrine\Fluent;
4
5
use Doctrine\ORM\Mapping\Builder\ClassMetadataBuilder;
6
use LaravelDoctrine\Fluent\Builders\Embedded;
7
use LaravelDoctrine\Fluent\Builders\Field;
8
use LaravelDoctrine\Fluent\Builders\Inheritance\Inheritance;
9
use LaravelDoctrine\Fluent\Builders\LifecycleEvents;
10
use LaravelDoctrine\Fluent\Builders\Overrides\Override;
11
use LaravelDoctrine\Fluent\Builders\Primary;
12
use LaravelDoctrine\Fluent\Relations\ManyToMany;
13
use LaravelDoctrine\Fluent\Relations\ManyToOne;
14
use LaravelDoctrine\Fluent\Relations\OneToMany;
15
use LaravelDoctrine\Fluent\Relations\OneToOne;
16
use LaravelDoctrine\Fluent\Relations\Relation;
17
18
/**
19
 * @method $this array($name, callable $callback = null)
20
 */
21
interface Fluent extends Buildable
22
{
23
    /**
24
     * @param string|callable $name
25
     * @param callable|null   $callback
26
     *
27
     * @return \LaravelDoctrine\Fluent\Builders\Table
28
     */
29
    public function table($name, callable $callback = null);
30
31
    /**
32
     * @param callable|null $callback
33
     *
34
     * @return \LaravelDoctrine\Fluent\Builders\Entity
35
     */
36
    public function entity(callable $callback = null);
37
38
    /**
39
     * @param array|string $columns
40
     *
41
     * @return \LaravelDoctrine\Fluent\Builders\Index
42
     */
43
    public function index($columns);
44
45
    /**
46
     * @param array|string $columns
47
     *
48
     * @return \LaravelDoctrine\Fluent\Builders\UniqueConstraint
49
     */
50
    public function unique($columns);
51
52
    /**
53
     * @param string        $type
54
     * @param string        $name
55
     * @param callable|null $callback
56
     *
57
     * @return \LaravelDoctrine\Fluent\Builders\Field
58
     */
59
    public function field($type, $name, callable $callback = null);
60
61
    /**
62
     * @param string        $name
63
     * @param callable|null $callback
64
     *
65
     * @return \LaravelDoctrine\Fluent\Builders\Field
66
     */
67
    public function increments($name, callable $callback = null);
68
69
    /**
70
     * @param string        $name
71
     * @param callable|null $callback
72
     *
73
     * @return Field
74
     */
75
    public function smallIncrements($name, callable $callback = null);
76
77
    /**
78
     * @param string        $name
79
     * @param callable|null $callback
80
     *
81
     * @return Field
82
     */
83
    public function bigIncrements($name, callable $callback = null);
84
85
    /**
86
     * @param string        $name
87
     * @param callable|null $callback
88
     *
89
     * @return \LaravelDoctrine\Fluent\Builders\Field
90
     */
91
    public function string($name, callable $callback = null);
92
93
    /**
94
     * @param string        $name
95
     * @param callable|null $callback
96
     *
97
     * @return Field
98
     */
99
    public function text($name, callable $callback = null);
100
101
    /**
102
     * @param string        $name
103
     * @param callable|null $callback
104
     *
105
     * @return Field
106
     */
107
    public function integer($name, callable $callback = null);
108
109
    /**
110
     * @param string        $name
111
     * @param callable|null $callback
112
     *
113
     * @return Field
114
     */
115
    public function smallInteger($name, callable $callback = null);
116
117
    /**
118
     * @param string        $name
119
     * @param callable|null $callback
120
     *
121
     * @return Field
122
     */
123
    public function bigInteger($name, callable $callback = null);
124
125
    /**
126
     * @param string        $name
127
     * @param callable|null $callback
128
     *
129
     * @return Field
130
     */
131
    public function unsignedSmallInteger($name, callable $callback = null);
132
133
    /**
134
     * @param string        $name
135
     * @param callable|null $callback
136
     *
137
     * @return Field
138
     */
139
    public function unsignedInteger($name, callable $callback = null);
140
141
    /**
142
     * @param string        $name
143
     * @param callable|null $callback
144
     *
145
     * @return Field
146
     */
147
    public function unsignedBigInteger($name, callable $callback = null);
148
149
    /**
150
     * @param string        $name
151
     * @param callable|null $callback
152
     *
153
     * @return Field
154
     */
155
    public function float($name, callable $callback = null);
156
157
    /**
158
     * @param string        $name
159
     * @param callable|null $callback
160
     *
161
     * @return Field
162
     */
163
    public function decimal($name, callable $callback = null);
164
165
    /**
166
     * @param string        $name
167
     * @param callable|null $callback
168
     *
169
     * @return Field
170
     */
171
    public function boolean($name, callable $callback = null);
172
173
    /**
174
     * @param string        $name
175
     * @param callable|null $callback
176
     *
177
     * @return Field
178
     */
179
    public function jsonArray($name, callable $callback = null);
180
181
    /**
182
     * @param string        $name
183
     * @param callable|null $callback
184
     *
185
     * @return Field
186
     */
187
    public function date($name, callable $callback = null);
188
189
    /**
190
     * @param string        $name
191
     * @param callable|null $callback
192
     *
193
     * @return Field
194
     */
195
    public function dateTime($name, callable $callback = null);
196
197
    /**
198
     * @param string        $name
199
     * @param callable|null $callback
200
     *
201
     * @return Field
202
     */
203
    public function dateTimeTz($name, callable $callback = null);
204
205
    /**
206
     * @param string        $name
207
     * @param callable|null $callback
208
     *
209
     * @return Field
210
     */
211
    public function time($name, callable $callback = null);
212
213
    /**
214
     * @param string        $name
215
     * @param callable|null $callback
216
     *
217
     * @return Field
218
     */
219
    public function carbonDateTime($name, callable $callback = null);
220
221
    /**
222
     * @param string        $name
223
     * @param callable|null $callback
224
     *
225
     * @return Field
226
     */
227
    public function carbonDateTimeTz($name, callable $callback = null);
228
229
    /**
230
     * @param string        $name
231
     * @param callable|null $callback
232
     *
233
     * @return Field
234
     */
235
    public function carbonDate($name, callable $callback = null);
236
237
    /**
238
     * @param string        $name
239
     * @param callable|null $callback
240
     *
241
     * @return Field
242
     */
243
    public function carbonTime($name, callable $callback = null);
244
245
    /**
246
     * @param string        $name
247
     * @param callable|null $callback
248
     *
249
     * @return Field
250
     */
251
    public function zendDate($name, callable $callback = null);
252
253
    /**
254
     * @param string        $name
255
     * @param callable|null $callback
256
     *
257
     * @return Field
258
     */
259
    public function timestamp($name, callable $callback = null);
260
261
    /**
262
     * @param string        $name
263
     * @param callable|null $callback
264
     *
265
     * @return Field
266
     */
267
    public function timestampTz($name, callable $callback = null);
268
269
    /**
270
     * @param string        $name
271
     * @param callable|null $callback
272
     *
273
     * @return Field
274
     */
275
    public function binary($name, callable $callback = null);
276
277
    /**
278
     * @param string        $name
279
     * @param callable|null $callback
280
     *
281
     * @return Field
282
     */
283
    public function rememberToken($name = 'rememberToken', callable $callback = null);
284
285
    /**
286
     * @param string        $entity
287
     * @param string        $field
288
     * @param callable|null $callback
289
     *
290
     * @return OneToOne
291
     */
292
    public function hasOne($entity, $field = null, callable $callback = null);
293
294
    /**
295
     * @param string        $entity
296
     * @param string        $field
297
     * @param callable|null $callback
298
     *
299
     * @return OneToOne
300
     */
301
    public function oneToOne($entity, $field = null, callable $callback = null);
302
303
    /**
304
     * @param string        $entity
305
     * @param string        $field
306
     * @param callable|null $callback
307
     *
308
     * @return ManyToOne
309
     */
310
    public function belongsTo($entity, $field = null, callable $callback = null);
311
312
    /**
313
     * @param string        $entity
314
     * @param string        $field
315
     * @param callable|null $callback
316
     *
317
     * @return ManyToOne
318
     */
319
    public function manyToOne($entity, $field = null, callable $callback = null);
320
321
    /**
322
     * @param string        $entity
323
     * @param string        $field
324
     * @param callable|null $callback
325
     *
326
     * @return OneToMany
327
     */
328
    public function hasMany($entity, $field = null, callable $callback = null);
329
330
    /**
331
     * @param string        $entity
332
     * @param string        $field
333
     * @param callable|null $callback
334
     *
335
     * @return OneToMany
336
     */
337
    public function oneToMany($entity, $field = null, callable $callback = null);
338
339
    /**
340
     * @param string        $entity
341
     * @param string        $field
342
     * @param callable|null $callback
343
     *
344
     * @return ManyToMany
345
     */
346
    public function belongsToMany($entity, $field = null, callable $callback = null);
347
348
    /**
349
     * @param string        $entity
350
     * @param string        $field
351
     * @param callable|null $callback
352
     *
353
     * @return ManyToMany
354
     */
355
    public function manyToMany($entity, $field, callable $callback = null);
356
357
    /**
358
     * Adds a custom relation to the entity.
359
     *
360
     * @param Relation      $relation
361
     * @param callable|null $callback
362
     *
363
     * @return Relation
364
     */
365
    public function addRelation(Relation $relation, callable $callback = null);
366
367
    /**
368
     * @return bool
369
     */
370
    public function isEmbeddedClass();
371
372
    /**
373
     * @return ClassMetadataBuilder
374
     */
375
    public function getBuilder();
376
377
    /**
378
     * @param string        $method
379
     * @param callable|null $callback
380
     */
381
    public static function macro($method, callable $callback = null);
382
383
    /**
384
     * @param string        $name
385
     * @param callable|null $callback
386
     *
387
     * @return Field
388
     */
389
    public function guid($name, callable $callback = null);
390
391
    /**
392
     * @param string        $name
393
     * @param callable|null $callback
394
     *
395
     * @return Field
396
     */
397
    public function blob($name, callable $callback = null);
398
399
    /**
400
     * @param string        $name
401
     * @param callable|null $callback
402
     *
403
     * @return Field
404
     */
405
    public function object($name, callable $callback = null);
406
407
    /**
408
     * @param string        $name
409
     * @param callable|null $callback
410
     *
411
     * @return Field
412
     */
413
    public function simpleArray($name, callable $callback = null);
414
415
    /**
416
     * @param string        $embeddable
417
     * @param string|null   $field
418
     * @param callable|null $callback
419
     *
420
     * @return Embedded
421
     */
422
    public function embed($embeddable, $field = null, callable $callback = null);
423
424
    /**
425
     * @param string        $type
426
     * @param callable|null $callback
427
     *
428
     * @return Inheritance
429
     */
430
    public function inheritance($type, callable $callback = null);
431
432
    /**
433
     * @param callable|null $callback
434
     *
435
     * @return Inheritance
436
     */
437
    public function singleTableInheritance(callable $callback = null);
438
439
    /**
440
     * @param callable|null $callback
441
     *
442
     * @return Inheritance
443
     */
444
    public function joinedTableInheritance(callable $callback = null);
445
446
    /**
447
     * @param array|string $fields
448
     *
449
     * @return Primary
450
     */
451
    public function primary($fields);
452
453
    /**
454
     * @param string   $name
455
     * @param callable $callback
456
     *
457
     * @return Override
458
     */
459
    public function override($name, callable $callback);
460
461
    /**
462
     * @param callable|null $callback
463
     *
464
     * @return LifecycleEvents
465
     */
466
    public function events(callable $callback = null);
467
}
468